Posts by Aldebaran28

    <b>Part Three - Implementing the new bodies and props into your ini files </b> This part of the tutorial will explain how to get your new body parts and props into the mod so you can see and test them. It is a very straight forward and easy stage to complete, especially compared to all off the above. After making sure that you have stored your new parts somewhere in your mod directory (normally somewhere in the characters directory), you will now need to make alterations to just two ini files. These files are: DATACHARACTERSodyparts.ini DATAMISSIONSmbases.ini The first step is to decompress these ini files and open the bodyparts.ini up in Notepad. This ini file is used to tell Freelancer which bodyparts and prop models are associated with which nickname. However, where you place the details for each model has to be placed in the correct location (otherwise they could get the wrong animations). As you look through the list though, it should be fairly apparant which bodypart goes where in the list. The groups are: Male and Robot Body Parts Female Body Parts Male Heads Female Heads Male Hands Female Hands Accessory´s (i.e. props) Lets start with declaring your body parts. If you look at the body part entry, you see that they have only two lines: [Body nickname = li_shipdealer_body &lt;--- change this to the unique nickname you wish to use in the ini files mesh = charactersodiesli_shipdealer_body.dfm &lt;--- change this to the path and name of your model file Just copy and paste in an entry into the correct location as noted above and change the details indicated. Nothing can be simpler. Make note however, that different body parts have different tag titles. You will find there are titles [Body, [Head, [LeftHand and [RightHand so make sure you get the right body part as well for the body part you are declaring. Next we need to declare your props. This is fairly simalar to the bodyparts, with two more lines added in. A typical entry looks like: [Accessory nickname = comm_rh_wilham &lt;--- change this to a unique nickname you wish to use in your ini files mesh = characterscommhelmetscomm_rh_wilham.3db &lt;--- change this to the path and name of your model file. hardpoint = hp_hat &lt;--- keep this unless eyewear body_hardpoint = hp_hat &lt;--- keep this unless eyewear If you have created eyewear instead of a hat, change the hp_hat entries to hp_eyewear. Now save the ini file and open up the mbases.ini file. As mentioned before, I won´t go into detail about the mbases.ini file (the file used to add NPC´s to space stations and bases) as other people have gone into this in quite some detail before. All I will do is indicate which lines you change to turn an NPC into your new creation: [GF_NPC nickname = MAND01_mandnav_001_m body = ci_mandalorian1_body head = im_black_head lefthand = benchmark_male_hand_left righthand = benchmark_male_hand_right individual_name = 80020 affiliation = br_n_grp voice = rvp111 misn = DestroyMission, 10, 17 room = bar accessory = prop_hat_ci_manda_helmet1 Here´s a typical NPC entry in the mbases.ini file (actually, not so typical, I took it from the Freeworlds mbases.ini file rather than vanilla Freelancers, but the process is the same). The entries you change on your NPC to include your body parts should be fairly obvious. Just use the nicknames you used in the bodyparts.ini file as your entries for body, head, lefthand and righthand. With your props, add the line at the end accessory = followed by the nick name you gave your prop. If you want to include both eye wear and a hat, just add two accessory lines at the end. It is also worth noting that these customised NPC´s can also be used in your NPC ship files and system ini files for station announcers that appear in the little tiny com window that you get when NPC´s contact you in space. Well, that´s the end of this little tutorial from me. I hope all of that is useful to someone out there and let us know any of any great characters you manage to build for the game (and if anyone builds any good Star Wars NPC´s which we don´t have, we would especially like to grab them off you <img src=smilies/icon_smile_big.gif width=15 height=15 border=0 align=middle>) Feel free to share this tutorial with others, just remember to give me credit for writing it. Edited by - Aldebaran28 on 3/28/2005 1:54:02 AM

    <b>Part Two - Creating Props </b> Props are something that depending on your point of view is easier or harder to implement than altering the dfm files mentioned above, depending on your modelling experience. Props are an item that can be added to an NPC, allowing further more uniqueness. In the Freelancer files, there are two types of prop that are covered by the Freelancer files: Hats: This includes Hats and Helmets Eyewear: This includes glasses, shades, visors, neuralnets and masks. Both of these props attach to the head and have no seperate animations of thier own, they move where the head moves. This is an important point to remember when creating your props, as any prop that comes too far below the chin can potentially end up moving through the body if the character turns their head or looks up and down. Unfortunately, there doesn´t seem to be a prop hardpoint for the hands to make characters hold things. When you see them holding things in the animation cuts, this is programmed directly into the THN and can´t be done with the characters normally. There really is not much difference between hats and eyewear props in how they are they built and applied. The only difference really is a name and where the Hardpoint on the prop attaches to the head. It does allow you to create two different props to attach to the head, but beyond that, there is not much else that makes a difference. I will explain the process for creating a prop here in relation to the hat hardpoint, but if you want to use the Eyewear hardpoint instead, the process is the same. The first step is to build the item in three dimensions (I normally use Gmax) and import it into Milkshape for texturing. There are plenty of good tutorials here already about building things in Gmax and texturing in Milkshape so I won´t go into detail about three dimensional construction except where the process is different from building say a ship or a station. Just bear in mind the shape of the head as you build the item and make sure that the model is done in one group with one texture (I use tga textures, though in this step, dds can be used as well unlike with the body parts). Once you have your model textured and built in Milkshape (remembering to use unique names for the textures and the group), use the CMP Importer plugin from Milkshape to import one of the already existing props into Milkshape. Use this as a guide to scale and resize your model to the correct proportions. Once you have done that, delete the prop and it´s textures you have imported and re-orientate your model so that the top of the prop is pointing to the left in the left projection window and where the face would in relation to the prop, it would be facing upwards (this is a completely different orienatation to what is used for ship models). Scale the model by 100 times (as the CMP Importer will have scaled the prop you used for comparison down by 100 times when you brought it in, unless you manually tell the importer to scale it back to the proper size) and export it with a unique name (I would use the group name) as a CMP file. Now we need to build ourselves a .3db which we will use for the prop. Using the UTF Editor, open up your CMP file that you just made and find the nodes entitled VMeshData and VMeshRef. Export these with just the name (no file extension). These two nodes contain all the mesh data you need for your prop. Now pick one of the pre-existing props 3db files once again from inside Freelancer and open it up in the UTF editor (I used prop_hat_male_br_elite_visor.3db as my basis). We will use this as our shell for creating our prop. You will need to make some alterations however. Using the prop_hat_male_br_elite_visor.3db as an example, these are the alterations you need to make to the file as you go down the list: 1. Under the VMeshData Tree, rename the tree labelled data.characters.props.prop_hat_male_br_elite_visor.lod0-112.vms to the name you gave your first group with .lod0.vms added as an extension. 2. Import the VMeshData file you created a moment ago into the VMeshData node under this tree. 3. Under the VMeshPart tree, import the VMeshRef file you created a moment ago into the VMeshRef node that is there. 4. Under the Matieral Library, rename the first material tree (called prop_hat_elite_br in our example) to the name you have given your texture (do not include the extension). 5. Under the tree you just rename, go to the node Dt_Name. Move the menu under ´Interpret Data as´ to the variable ´String´ and click edit. Replace the words here (prop_hat_elite_br.TGA in our example) with the name you gave your texture, this time including the extension .tga to the end. 6. This prop example has another material contained in its material library, the glass texture. If there are surplus textures, you can just simply delete the entire tree out of the file (it was called prop_hat_elite_brGLASS in our example) as we are only using one texture. 7. Rename the tree under the Texture Library (it is called prop_hat_elite_br.TGA in our example) to the same name as your texture once again with the .tga extension on the end. 8. There is a node under this tree called MIPS. If your textures are in DDS format, select this node and click import and import your dds texture into there. If your texture is in TGA format, rename this node to MIP0 and then highlight the node and import your tga texture. Once you have done all that, save your prop with a unique name and the extension .3db after it. Congratulations, you have just finished making your prop. However, the hard work ain´t over yet. Indeed, the next step is to get it to line up properly on the head. The only way you can do this is to fiddle around with the 3db file in HardCMP. Once you have followed the next part to put the prop into the ini files, you will need to load up the mod and check it´s alignment visually, before unloading the mod, going back into HardCMP and give tiny adjustments to the hardpoint (there is only one hardpoint, hp_hat) and here is the emphasis... tiny. We are talking no more than about 0.01 movements of the hardpoint and you will not be able to clearly see the hardpoint in relation to the model as HardCMP shows the hardpoint as a large cube that will cover the entire model. I found this stage of loading up the mod, checking where the alignment is on the NPC, unloading the mod, making adjustments in HardCMP, saving my work and doing it all again, the most time consuming part of the entire thing of creating a prop. But don´t give up, because though it is time consuming and awkward, once it is done, you have completed the prop. Now, as previousily mentioned, I would talk about the idea of alien heads. The mod developers of Freeworlds who worked on it before me had managed to include several alien head designs, including a Wookie and a Mon Calamari head design. It would appear that they had found a way to alter the mesh of the head at first... but not at all. All they did was make a hat prop in the shape of the alien head that was bigger than the head they were putting it on and lined it up properly. Ok, so the lips won´t move when it talks and the eyes won´t blink, but otherwise the ´false head´ will turn and look around the room like any other as it will move with the real head that is beneath it. This is also how I created the Twi´lek´s Lekku (the funny hair thing that grows out of their heads) that you see in the example picture I showed earlier. This does lead me to an interresting idea.... if a model has it´s textures removed, the model is essentially still there but will not show up (note to would be Cloak cheaters - removing the textures from a model will only render it invisible to you, not to anyone else, so don´t even try to cheat that way). If you made a head with no textures, the hard point for the head would still exist and move around as normal, but the head won´t be visible. You could use this trick to create a ´false head´ prop which is then either a different shape or size to a human head without worrying about the human head sticking out of points... I think I will try and make an Ithorian with this technique. That´s it on props. If anyone finds out that there were other prop hardpoints included the game´s code, but never actually used, could you let me know so I can look more into it. Next part of the Tutorial deals with implementing your models into the game and which ini files to alter.

    <b>Part One - Altering the Head, Hands and Body .dfm files </b> As most people will know by now, an NPC is made of a number of models. These are normally the Body, the Head, the Hands and one or two props (glasses and hats). The body, the head and the hands are all dfm files, the props are 3db files, all found in the various sub directories inside of the Character directory in Freelancer. So lets start with editting the look of a head as that is a one piece texture. Find a head which in Freelancer matches the shape of the head you want to create (we won´t be editting the shape itself) and copy it to a working folder (I find it easier to have a working folder for doing this sort of stuff). It will be named something like ge_female1_head.dfm and will be found in DATACHARACTERSHEADS. Once you have a copy, open the dfm file up in the UTF Editor. Suddenly, the dfm looks like a scary place to be in comparrison to a lot of files that you could open up in a UTF editor. However, for this tutorial, lets not worry about most of the stuff (most of it is mesh data dealing with which mesh connects with which mesh at which point). What we are looking for is the good old Texture Library. Opening it up will reveal normally four texture groups which are usually the teeth, the eyes, the highlight of the eyes and the actual head texture. Unless you want to change the teeth and eye textures, don´t worry about those for now (if you do want to alter them, the process is the same as for altering the the actual head texture). Open up the head texture tree, normally called something like ge_female1_head02.TGA. And suddenly, we find that this texture actually has nine levels of detail! This is far more levels of detail than even ships or stations get given in Freelancer. The texture files are labelled MIP0 to MIP8, however, we won´t need to extract them all. Select the MIP0 and Export it to your working folder with the file name like example0.tga. IMPORTANT: you must add the .tga tag at the end. It is also advisable to add the 0 at the end of the file name as it will make things a little easier a bit later on. Right, now you have tga texture file for the face, open it up in your favorite image editting program and.... err... that is one ugly picture! What you should be looking at is a two dimensional texture of the skin that is wrapped around the mesh (basically, it looks like some psycho killer has skinned your poor NPC). Now comes the fun part, altering it. Using the image as a base, use your texturing know how to alter to your hearts content. Things that you can NOT alter are: The location of the eye sockets Where the hair on the head will be Where the mouth is Where the ears are Where the nose is. These are defined by the shape of the mesh. You could change them in the texture file, but it will look very odd later when applied to the mesh later on. So your work will need to go around these bits. Some ideas of what you could do include: Change the skin / hair / colour / tone Add tatoo´s or other warpaint markings Give male faces (and female if you are really odd) stubble, beards and moustaches. Make other exotic alien markings (for example, if I were making a Star Trek mod, a couple of darker skin lines on the nose ridge could be used to turn the head into a Bajoran head). Once you have finished making your alterations, save your work and we will now look at creating the nine levels of detail. Each level of detail is a seperate image that is basically smaller than the previous image. The sizes of the various levels of detail are: MIP0 = 256x265 MIP1 = 128x128 MIP2 = 64x64 MIP3 = 32x32 MIP4 = 16x16 MIP5 = 8x8 MIP6 = 4x4 MIP7 = 2x2 MIP8 = 1x1 As you can see, each level off detail is exactly 50% smaller than the level of detail before it. This makes things so much easier for us. From you original image, scale it down by 50% in your imaging program and save that one as example1.tga (or what ever file name you are using). The use that scaled down version and scale it down by 50% again and save it as example2.tga. Repeat with each one until you reach example8.tga which will be only 1 pixel by 1 pixel across. IMPORTANT: Do NOT convert your .tga into .dds format. It will not work. Now we return back to the UTF editor and back to where you exported the tga from to begin with. Selecting MIP0 again in the texture library, click import and import back into it example0.tga. Then select MIP1 and import example1.tga and so on until you have imported all of your tga´s into their corresponding MIP´s. Now your textures is imported, save the file with a unique file name ending in the .dfm tag at the end (for example, my_head.dfm). Move this head then from your working folder to the Freelancer directory. You could place it in the Heads directory with the rest of the heads, but personnally, I prefer to make a new folder in the Characters directory and put all my custom body parts in there. Right, before we get onto how to incorporate the body parts into the game´s ini files and creating props (which includes more exotic alien heads), lets take a quick look at the other two body parts, hands and bodies. Hands are relatively simple, just remember there is a left hand and a right hand, though the textures for each set are exactly the same for the left and right hand (even in orientation). The only difference between the two is obviousily the shape. You create your new textures in exactly the same way as you would the head, remembering the basic outline can not be changed. However, the texture you use for one hand can also be used for the other which saves having to do it twice. Bodies are a little bit more complex to alter but are basically the same as heads again. When you open up a body .dfm in the UTF editor, you will find there are normally three textures. Export the MIP0 of each of these and have a look at all three in your image editting program. You will see that each one deals with a different part of the body. Again, you can´t alter the shape of the clothes and the body, but you can alter the appearance. Very handy if you are creating a genre specific mod based on things like Star Trek, Star Wars, Babylon 5, Farscape etc... where the clothing and uniforms have a unique appearance different to those in Freelancer. Using these three images as a base, create your new image with the clothing textures in exactly the same places as they appear in the original texture. You will then need to create the 9 levels of detail as mentioned above for each one and import the 27 textures into the body dfm in the same way. Just a quick note: I found that in the ku_kym_body_gen.dfm that there is a forth texture which when extracted looks like a head texture. However, the actual face is not important in this body, the mesh just uses the texture to colour the skin that is visible on this body on the upper chest. If you are creating an alien species who has a different skin colour and is going to use this body, you will need to alter the skin colour on this texture as well (and do the nine levels of detail) as I did with my <A href=´http://www.freeworldsmod.com/desktopmodules/yetanotherforum.net/image.aspx?a=1202´ Target=_Blank>Twi´lek</a>. Otherwise, just leave it alone. There may be more bodies like this as well that I haven´t found yet. Thats it for altering the heads, hands and bodies. Next up, props....

    @ Cold Void: I think the trouble with a 3db exporter might be that different 3db´s have additional nodes for different things. For example, the Cockpit also has the camera information in it that other 3db´s don´t. But a base 3db exporter would be handy

    Not a problem at all. Give me some time (between my other many projects down at Freeworlds) and I will try and trace back what I did and which bits were missed (I think it was a couple of renaming issues etc... in the file itself and there were surplus nodes to be removed with additional textures from the files - and the whole MIPS / MIP0 issue I had above off course). And I know what you mean about the pain in the neck it was. I found it easier creating the Twi´leks multiple parts then getting that bridge to work.

    One solution to Cold Void´s idea would be set up two entries for the ship and have two different types of guns. One entry would be the NPC version that would allow their shots to move around a bit more, and the other for players with a fixed weapon position. You should only need one model for it still, so it won´t increase the size of your mod by much either to do it that way. Off course, this would also whack the difficulty of fighting NPC´s up a few notches at the same time. Freeworlds Mod Developer Author of Modular Station ´There is no Good nor Evil in the universe, just perceptions and circumstances.´

    Sorry about the double post earlier and double signature. Tap on the back of my hand there. Ok, since you insist, here is a picture of the bridge I built in action. <A href=´http://www.freeworldsmod.com/desktopmodules/yetanotherforum.net/image.aspx?a=1211´ Target=_Blank>ISD Bridge</a> Funniest bit about it, the ship I used to test it on was actually a Tie-Fighter Mk II, kind of a big bridge for such a tiny ship. And in case anyone wonders, in front of the ship is the Imperial Salvage Station in the Yavin System (part of the new stations design done for are next version of the mod). There is not much Field of View from the bridge though (I might need to adjust the camera angle a spot), but then again, the only thing that should really cause a major problem with is combat and who fights combat in a capital ship in bridge view anyway? Once you have a grasp of the 3db process, it opens a whole new world up in modelling for Freelancer, as can be demonstrated with this picture which I couldn´t resist adding (only because I proud that I managed to work it all out): <A href=´http://www.freeworldsmod.com/desktopmodules/yetanotherforum.net/image.aspx?a=1202´ Target=_Blank>Female Twi´lek</a>

    Just a quick note to add about the looting. If you want ships to drop ALL of their cargo when player looting (and / or NPC) looting is switched on, then you will need to adjust as well the entry: units_per_container = 1 in the select_equip.ini This will need to be done for each commodity. The reason being is that a maximum of 7 containers will be dropped from a ship when destroyed (I assume this limit was put in place so that servers and players PC´s didn´t have to try and track 100´s of loot containers floating around their ships). However, you can adjust how much of one particular type of commodity is stored in one container. So if you adjust the number to say 30 for each commodity, upto 210 units will be dropped when the opponant is looted. If you want all loot to be available to be looted, then simply take the amount of cargo space for your largest ship and divide by 7 (rounding off to the nearest whole figure) and use that as your number for the entry. I don´t know if that is some help to people reading this topic. Freeworlds Mod Developer Author of Modular Station ´There is no Good nor Evil in the universe, just perceptions and circumstances.´

    Never mind about the textures, I solved the problem *slaps his own head* I found the solution while looking through the forum under a completely different subject. I had failed to notice the MIPS &lt;-&gt; MIPO / DDS &lt;-&gt; TGA Relationship. For reference for anyone else. MIPS = DDS file formats MIP0 (and the the subsequent MIP1 upwards) = TGA file formats. Something so simple yet so easily over looked. I am still looking for a solution to the vibration problem though. Freeworlds Mod Developer Author of Modular Station ´There is no Good nor Evil in the universe, just perceptions and circumstances.´

    Better get our reservations in as we will have reached our limit when this next mod is out. Can we reserve 1.67-1.69 for Freeworlds (we will have to look into what to do after that so as not to clash with TNG, but that will be some way off still). Can we also reserve 16.6x - 16.7x for Freeworlds Scenerio´s please. Freeworlds Mod Developer Author of Modular Station ´There is no Good nor Evil in the universe, just perceptions and circumstances.´

    The next version of Freeworlds is still heavily under work. 5 more systems added (there is a reason why we add the systems slowly, it encourages better multi-player interaction and means more attention is paid to each system in testing and construction), currently 170+ ships and each space station will have a unique design (all Freelancer stations now removed from the mod). However, release is still some time off (no release dates, it is done when it is done) The reason the Freeworlds Open SP was not posted here was because it was developed by someone outside of the Freeworld´s mod development team. The team did not mind that someone had done this with the mod, but it is obviousily upto them as to whether they wished to post it or not. We may (and a big may) look to include the open SP in the next mod, but there is a lot of work still needed on it, so don´t hold your breath. Freeworlds Mod Developer Author of Modular Station ´There is no Good nor Evil in the universe, just perceptions and circumstances.´

    Things that need to be checked when building custom bases: the system ini (i.e. LI01.ini) that the entry is correct and the nickname does not collide with any other base names. Helps if the IDS name is correct. The bases actual ini (in the systems bases directory, normally labelled something like Li01_01_base.ini) This should be present and all parts in there should be renamed to the base you are looking for. Pay particular attention to the rooms it is looking for, as the path must be correct. Also pay note to what rooms it is looking for (like deck, bar etc...) In the rooms directory inside in the bases directory, those rooms you had in the bases ini also need their own seperate ini´s. Normally labelled something like LI01_01_Bar.ini etc.... for each room the base is looking for. The universe.ini most be pointing to the exact path for the base. Having the correct strid name also helps (i.e. IDS name). Remove your Mbases entry for this base until you have it working with the above only. Not having an entry in MBases will give you a base without NPC´s. If it works without the MBases code, you know it is problem in your MBases. If it still doesn´t work, you know it is a problem in one of those files somewhere. Freeworlds Mod Developer Author of Modular Station ´There is no Good nor Evil in the universe, just perceptions and circumstances.´

    An Open SP version of Freeworlds 1.65 has been built by Non Compos Mentis. It can be found at this link: http://ezshare.de/files-en/183…nSP_v0.41b.zip.flmod.html The thread at the Freeworld´s development forums concerning the Open SP can be found here: http://usa.assassinsden.com/De…=posts&amp;t=5785&amp;p=1 I may consider programming an Open SP into the next mod as well, depending on how much time we have spare after the loads more stuff we are putting into 1.66. Freeworlds Mod Developer Author of Modular Station ´There is no Good nor Evil in the universe, just perceptions and circumstances.´

    First off, what an amazing mod. I absolutely love it and it brings back so many old memories. Secondly, as noted above, Warzog will not be doing this mod any more. At the moment, I can not take on any full time development role in any mod´s as most of my time is dedicated at the moment to working on Freeworld´s 1.66. However, who ever decides to take on the mod (and I sincerely hope someone does), a couple of things for you to note (and I will gladly help out where I can). A) New Constinople has a few bugs I found (namely Sur File needs resorting and missions end up putting your target base into the middle of the station). I will gladly help sort this problem out for who ever takes over. <img src=smilies/icon_smile_blackeye.gif width=15 height=15 border=0 align=middle> As you maybe aware, I built the Midway model. If people want to include this in the mod in future, again, I will hard point and sur file it (probably re-release it onto Lancers Reactor for all the Privateer mods to use). Anyway, great job Warzog, I can understand people get burnt out from time to time working on these things. You have done a brilliant job with it to date and who ever fills your shoes has some big shoes to fill indeed <img src=smilies/icon_smile.gif width=15 height=15 border=0 align=middle> Freeworlds Mod Developer Author of Modular Station ´There is no Good nor Evil in the universe, just perceptions and circumstances.´