*******************************************
*                                         *
*   Aldebaran's Plastic Surgery Kit One   *
*                                         *
*******************************************

Name:  Aldebaran's Plastic Surgery Kit
Version:  v1.0
Type:  Resource Pack for Freelancer Modding (new NPC heads and Accessories, plus reference images and code)
Author:  Aldebaran
Author Email:  kilamatara@yahoo.co.uk
Date Released: 4th June 2006
Web Address:  http://www.phpbber.com/phpbb/index.php?mforum=fwt (Freeworlds Development Forums)
Direct Enquiries to:  www.lancersreactor.com (for questions)


THIS IS NOT A MOD.

This is a modders resource.  For a while now, it has bothered me how limited the amount of variety that has existed amongst the NPC models provided with Freelancer is.  With most bases requiring normally a minimum of 6 NPC's (1 Shipdealer, 1 Commodity Dealer, 1 Equipment Dealer, 1 Bar Tender and 2 Bar Regulars) and normally more, there is only so far you can go with the NPC's provided within Freelancer before you start to run into the same people over and over again.

While we have not found a way yet to alter the actual meshes for NPC's, we have found methods to alter the textures and also create accessories that increase the amount of variety we see amongst our NPC's.  This PSK (Plastic Surgery Kit) provides modders with 50 new Female NPC Heads plus 28 Pony Tail hair extensions that can be added to some Female NPC heads to create even more variety.  Also included in the kit is two reference directories with pictures of the new heads and hair extensions for quick referencing and also a copy of the bodyparts.ini file which will enable Freelancer to recognise these parts.  Details are also included (below) on how to use these items and some possibly more commonly asked questions in regards to them.

This is only the first of a planned series of packs that I am building for modders, with future plans to expand this with future Plastic Surgery Kits for new Male NPC heads, more hair extensions (like pigtails and braids) and a Wardrobe kit with with new clothing, stay tuned as more will be coming.

You are welcome to use the Plastic Surgery Kit within your own mods.  You do not need to ask permission to use it, but it is expected that you provide credit to Aldebaran along with a link to the files location on Lancers Reactor.


*******************************************
*                                         *
*              Disclaimer                 *
*                                         *
*******************************************


Like all files associated with mod development, if you use or download these files or the tutorial or information found within this readme, you do so at your own risk only.  Aldebaran will not be held responsible for any damages that might possibly occur to hardware, data, personnal self etc... that may result from use or misuse of this kit.  If you are not comfortable with this idea, then simply do not use them.  By downloading and / or using these files, you agree to not hold Aldebaran responsible for any such problems, damages, injuries or death that may occur to yourself or other using them.


*******************************************
*                                         *
*      How to use these in your mod       *
*                                         *
*******************************************

STEP ONE:  Getting your mod to recognise the new models.

This is a fairly easy step.  Find the directories entitled PSK_Extensions, PSK_Heads and the file bodyparts.ini within this pack and copy them along with the directories contents across to the following location within your mod folder:

..\DATA\CHARACTERS\

This will now set Freelancer up to recognising the new codes.




STEP TWO:  Choosing Heads and or extensions.

Again, a simple stage.  To choose a head, go into References (Heads) and flick through the images (windows XP's image viewer is handy for this) until you find the head you want.  The title of the image is also the name of the heads nickname that you will be using.  To choose a hair extension, do exactly the same, but with the References (Extensions) directory instead.



STEP THREE:  Putting the Heads onto your NPC's:

This is divided into a few mini-tutorials as NPC heads can be used in a variety of places.  There are more complex tutorials and places to find information out about this sort of thing like at www.lancersreactor.com.






PLACING NEW NPC MODELS INTO BARS, ROOMS ETC....

The file you need to alter here is called mbase.ini which is one of the largest and scariest files in Freelancer.  Open up mbase.ini (or add an mbase.ini file to your mod by copying the one from the SDK 1.3 which has it decompressed already - you will find it hidden in DATA\MISSIONS\).  What you have here is an entry for every single base in Freelancer followed by information pertaining to it's NPC's and Missions it hands out.  Lets take a quick look at a typical NPC Entry from the normal Freelancer files.

[GF_NPC]
nickname = li0101_ageira_001_f
body = sc_female1_body
head = br_karina_head_gen
lefthand = benchmark_female_hand_left
righthand = benchmark_female_hand_right
individual_name = 220001
affiliation = co_vr_grp
voice = rvp501
room = bar

This is an NPC entry from Manhatten (with the bribe and rumour information omitted for this NPC which appears straight after the entry).  Again, I won't go into details about creating the full entry for a new base in mbases.ini as other tutorials will cover that much better.  However, straight off from the mark, I think you can see which line you would need to alter to change the head of this NPC.  Thats right... it's the line cunningly disguised as:

head = br_karina_head_gen

To swap this NPC's head for a new head from the kit, all we need to do is replace the name with the name of a head from the kit.  So, say I choose the rh_newscaster_black_head_hat from the images to replace this NPC's head, all I would need to do is change:

head = br_karina_head_gen

To read:

head = rh_newscaster_back_head_hat

And there you were probably thinking this was going to be really difficult huh?

Anyway, moving onwards.  Perhaps you would like this NPC to have more than just the normal head. Perhaps one of the new hair extensions.  Well a black pony tail would go well with this head, so say we looked through the references and found that psk_black_pony_3 was the one we wanted for her, how would we get that to display?

Simple, we just add to the NPC's entry the following line:

accessory = prop_black_pony_3

And thats it.  Now wasn't that hard?

Note:  The hair extensions use the same hardpoint as Hats within the game.  As most hats would look pretty silly with a pony tail sticking out of them, this shouldn't cause a problem as you should choose one or the other.  It is also worth noting that some Head Mesh's do not possess the Hat Hardpoint attachment, so on some heads, these hair extensions will not work.  However, again, that should not be too much of an issue as I have found the best heads for these hair extensions are those that were originally designed to take a helmet or hat in the first place.





GETTING YOU NPC SHIP PILOTS TO BE USING THESE NEW HEADS AND EXTENSIONS

For this one, you need to open up the faction_props.ini file found hidden in DATA\MISSIONS\ (again, if you don't have this file in your mod already, copy it across from the SDK 1.3).

Now, these entries deal with what sort of things each factions ships use, a typical entry in here looks as follows (this is the one for Liberty Navy):

[FactionProps]
affiliation = li_n_grp    ; <--------------This is the factions nickname to tell which faction this bit is for.
legality = lawful
nickname_plurality = singular
msg_id_prefix = gcs_refer_faction_li_n
jump_preference = jumpgate
npc_ship = li_n_li_elite_d1-3
npc_ship = li_n_li_elite_d4
npc_ship = li_n_li_elite_d5
npc_ship = li_n_li_elite_d6
npc_ship = li_n_li_elite_d7
npc_ship = li_n_li_elite_d8
npc_ship = li_n_li_elite_d9
npc_ship = li_n_li_elite_d10
npc_ship = li_n_li_elite_d11-19
npc_ship = li_n_cruiser_d22
npc_ship = li_n_dreadnought_d25
voice = pilot_f_mil_m01
voice = pilot_f_mil_m02
voice = pilot_f_leg_f01
voice = pilot_f_leg_f01a
mc_costume = mc_li
space_costume = li_captain_head, li_male_elite_body, comm_ge_generic2
space_costume = li_rockford_head, li_male_elite_body, comm_li_hatcher
space_costume = li_sales_head_hat, li_male_elite_body, comm_ge_generic2
space_costume = ge_male4_head, li_male_elite_body, comm_li_hatcher
space_costume = pl_male2_head, li_male_elite_body, comm_ge_generic2
space_costume = ge_male3_head, li_male_elite_body, comm_li_hatcher
space_costume = li_newscaster_head_gen_hat, li_female_elite_body, comm_ge_generic2_female
space_costume = li_newscaster_head_gen_hat, li_female_elite_body, comm_li_hatcher_female
space_costume = br_newscaster_head_gen_hat, li_female_elite_body, comm_ge_generic2_female
space_costume = br_newscaster_head_gen_hat, li_female_elite_body, comm_li_hatcher_female
space_costume = pl_female2_head, li_female_elite_body, comm_ge_generic2_female
space_costume = pl_female2_head, li_female_elite_body, comm_li_hatcher_female
firstname_male = 226608, 226741
firstname_female = 226808, 226952
lastname = 227008, 227307
rank_desig = 197002, 197003, 197004, 6, 9
formation_desig = 197808, 197820
large_ship_desig = 196976
large_ship_names = 202608, 202647
scan_for_cargo = commodity_alien_artifacts, 1
scan_for_cargo = commodity_cardamine, 2
scan_announce = true
scan_chance = 0.300000
formation = fighters, fighter_li_n

Now, thats again quite a bit of information, but the bit we are interrested in is this bunch of lines:

space_costume = li_captain_head, li_male_elite_body, comm_ge_generic2
space_costume = li_rockford_head, li_male_elite_body, comm_li_hatcher
space_costume = li_sales_head_hat, li_male_elite_body, comm_ge_generic2
space_costume = ge_male4_head, li_male_elite_body, comm_li_hatcher
space_costume = pl_male2_head, li_male_elite_body, comm_ge_generic2
space_costume = ge_male3_head, li_male_elite_body, comm_li_hatcher
space_costume = li_newscaster_head_gen_hat, li_female_elite_body, comm_ge_generic2_female
space_costume = li_newscaster_head_gen_hat, li_female_elite_body, comm_li_hatcher_female
space_costume = br_newscaster_head_gen_hat, li_female_elite_body, comm_ge_generic2_female
space_costume = br_newscaster_head_gen_hat, li_female_elite_body, comm_li_hatcher_female
space_costume = pl_female2_head, li_female_elite_body, comm_ge_generic2_female
space_costume = pl_female2_head, li_female_elite_body, comm_li_hatcher_female

When you encounter an NPC in game and they talk to you, the computer randomly chooses an NPC build from this list.  Each line represents a different NPC build and can be described as basically being the following:

space_costume = NPC Head, NPC Body, NPC Accessory

I think you can work out what thus needs to be done... yep, just put your new heads and accessory nicknames into the lines at the appropriate points.  For the body type, I'd recommend for now just using the same body type as used by all the other pilots (though naturally, use a female body with a female head and vice-a-versa).  So, lets say we wanted to have a Goth added to the Liberty Navy who was reckless, left their helmet at home, and had their pony tail up in a topknot, all we would need to do is add to this list a line that says something like:

space_costume = br_newscaster_goth_head_hat, li_female_elite_body, prop_black_pony_1

Save that and next time you use your mod, sometimes the NPC's flying that factions ships will turn up with those parts instead of the normal ones.






MAKING STATION ANNOUNCER NPC'S USE THE NEW HEADS AND ACCESSORIES

For this one, you need to go into your systems ini file that tells Freelancer where your base is.  For example, for New York System this is DATA\UNIVERSE\SYSTEMS\LI01\LI01.ini

Search through here until you find the base whose announcer it is that you want to change.  For example, here's the code for Newark Station in the LI01.ini file:

[Object]
nickname = Li01_08  ; <------ This is Newarks nickname in Freelancer
ids_name = 196773
pos = -35763, 0, -25450
rotate = 0, 40, 0
Archetype = largestation1
ids_info = 65761
base = Li01_08_base
dock_with = Li01_08_base
voice = atc_leg_f01
space_costume = br_karina_head, br_karina_body
reputation = co_ic_grp
behavior = NOTHING
difficulty_level = 3
loadout = space_station_co_01
pilot = pilot_solar_easy

If you have read the mini-tutorial for putting NPC's into ships, then you may recognise a simalar line from here.  There is fact two lines to pay attention to:

voice = atc_leg_f01
space_costume = br_karina_head, br_karina_body

The first line is the NPC's voice.  You want to make sure that the voice line is for an Female Sound if you are using a female NPC, an male voice if using a Male NPC, otherwise you won't hear anything (Freelancer is programmed so you can't get transvestites).  The best bet here is just to look at other stations in Freelancer and use the appropriate voice from each.

Once again, space costume is broken down in the same way with NPC ships.  Though many don't have the accessory added to them, adding a third entry to the line dictates the accessory used.  So, if we wanted to change Newarks station announcer into a goth, all we would need to do is change the space_costume line to read:

space_costume = br_newscaster_goth_head_hat, br_karina_body, prop_black_pony_1

And volia, one new NPC Station announcer.






*************************************************
*                                               *
*  Some questions answered that you might have  *
*                                               *
*************************************************


HOW DO I ADD THESE TO MY MOD?
You nub, read the above text.



HOW COME THERE IS ONLY FEMALE HEADS AND HAIR EXTENSIONS IN THIS PACK?
I do have plans to build a set of new male heads for the second Plastic Surgery Kit, but I started with Females as Digital Anvil seemed to neglect the fairer sex for variety in their designs when they made Freelancer.



HAVE YOU BUILT ANY OTHER CUSTOM NPC'S BEFORE?
Yes, I built a couple of the NPC's used in Freeworlds 1.66 and later (the Twi'leks for example and some of the other costume designs, though previous developers and a guy called Jong built the vast majority of the custom NPC's in Freeworlds 1.66 and previous incarnations).  I have also built a set of StarFleet Uniforms for both males and females, covering the three department colours (red, blue and yellow) and six ranks (Ensign, Lieutenant (jg), Lieutenant, Lieutenant Commander, Commander and Captain) which will be appearing in the Star Trek:  First Genesis mod whose alpha is currently being constructed.  I plan to be building more new costume designs for both Freeworlds and Star Trek:  First Genesis in the up coming months as well as the stuff for the PSK (Plastic Surgery Kit), HEK (Hair Extension Kit) and WDK (Wardrobe Kit).



CAN I USE THESE AS WELL IN MY MOD?
Sorry, but the answer here is no.  The stuff being built specifically for Freeworlds and Star Trek:  First Genesis is unique to those mods only.  Don't try asking for permission, you won't get it.  The only stuff that can be used for other mods is the stuff I release as a Modders Resource, such as these Plastic Surgery Kits, the HEK and the WDK.  (Though it should be noted that the stuff in my Dark Liberty mod is also open resource, but those costumes and heads will making appearances in the future PSK and WDK's)



YOU MENTIONED THE SDK 1.3 ABOVE, WHAT IS IT AND WHERE CAN I GET IT?
The SDK is a set of Decompressed Freelancer ini files that are a good basis to use when making any new mod. The SDK was made by Louva-Deus from =EOA= Players Consortium and can be found for download by copying and pasting the following address into your browsers address bar:

http://www.lancersreactor.com/t/Download/Download.asp?ID=721



CAN YOU BUILD ME A CUSTOM NPC IF I TELL YOU WHAT I WANT?
No, I do not have the time between working on Freeworlds, helping with Star Trek:  First Genesis, trying to have a life etc... to be taking orders for custom NPC's.



HOW DO I MAKE MY OWN CUSTOM NPC'S?
I have written a Tutorial on how to build your own custom NPC's at Lancers Reactor.  You can find that article by copying and pasting the following address into your web browser:

http://www.lancersreactor.com/t/forum/topic.asp?TOPIC_ID=38344&FORUM_ID=29&CAT_ID=9&Topic_Title=%2A%2ATutorial%2A%2A+%2D+Making+Custom+NPC+Appearances&Forum_Title=Freelancer+Editing+Tutorial+Forum&M=True&S=True



IN THE REFERENCE PICTURES PROVIDED, WHERE ABOUTS IN THE GAME WERE THEY TAKEN?
Those images were taken at the Multi-Player Nexus in the Freeworlds mod, which is where I conduct a lot of NPC testing.



THE WHITE COSTUME THE NPC'S ARE WEARING, IS THAT AVAILABLE FOR US TO USE?
Not at the moment, that is a costume from Freeworlds.  However, I may make that one available through the WDK at a later date.



I HAVE EXPERIENCED OR HEARD THAT SOMETIMES WITH CUSTOM NPC'S WHEN TWO OR MORE APPEAR TOGETHER, THEY BOTH APPEAR IDENTICAL RATHER THAN AS THEY SHOULD, WILL THAT HAPPEN WITH THESE?
The error is caused by things sharing the same name within the models files.  These NPC's do not have that problem, all appropriate nodes have their own name and should work fine side by side with one another and along beside the original Freelancer NPC's.  How to do this isn't covered at the time of writing in my tutorial, but I may in the near future update the tutorial to cover this information, with thanks to Cold_Void who pointed me in the direction of an easier way of doing it with the UTF Editor at Lancers Reactor.



I HAVE GIVEN AN NPC A HAIR EXTENSION BUT IT DOESN'T SHOW, HOW COME?
I touched on this briefly above in the mini-tutorials, but basically I believe it is because some head meshes lack the connection point to attach hats to.  As this is normally heads that have big hair styles anyway, I personally think that the hair extensions are best left away from these heads.  However, to be honest I haven't researched the phenomina completely so I can not be 100% sure on this and may release a fix for these at a later date.  All I can suggest is try using a different head model.



THE BR_NEWSCASTER_X_HEAD_HAT HAS A GLITCH, CAN THIS BE FIXED?
This is a glitch in the original mesh.  To explain, what happens is a thin black line appears on the models left cheek when viewed from certain angles on the left.  This is the only angle I have seen this glitch from with the model and is a problem with the original mesh.  I guess DA didn't bother fixing it as that model those heads are based on in Freelancer is only used to view from the front in NPC ships and as a station announcer.  Until we find a way to actually alter the dfm meshes, the problem can not be fixed.  The only thing I can suggest if the slight glitch bothers you is to use the NPC head only in scenes where it is not viewed from the left angle, or on NPC ships or as a station announcer.



MY MOD ALREADY HAS SOME CUSTOM NPC DESIGNS IN IT, IS THERE A SIMPLE WAY TO ADD THESE NEW BITS TO MY MOD'S CODE?
Yep, I took the liberty of thinking some people might want to do that as well.  If you open up the Bodyparts.ini provided with this pack, you will find the heads and hair extension props are clearly grouped together in two places with big comment signs highlighting where the code starts and stops.  Just copy the code in these areas into your own bodyparts.ini file, remembering to place the female heads where the female heads is in the code, the and hair extensions at the same place as all the other props in the code (bodyparts.ini has a certain order that the coding must go in).  Then just copy the two directories with the models across to your own DATA\CHARACTERS\ Directory, and it is then all set up ready for you to use.



I HAVE A QUESTION THAT IS NOT ANSWERED HERE...
Then your first port of call should be Lancers Reactor found at:

www.lancersreactor.com

Before posting a question though, I very thoroughly recommend using the search engine on the site to see if the question has been asked before, as modders and the moderators get quite upset when people ask a question that has been asked time and time again before.  If you can not find the question having been asked before, then by all means make a new post, remembering to adhere to forum rules at Lancers Reactor and make sure it is posted in the correct forum.  I often frequent the site myself, so you may end up with me answering the question myself, but even if I don't, there is a lot of knowledgable Freelancer modders who hang out at the site who might possibly have the answer you are looking for.