Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Table of contents
The Complete Freelancer Ship Creating & Editing Tutorial ............................................................. 1
Legalities and user agreement................................................................................................................ 1
Table of contents.......................................................................................................................................... 1
About this tutorial ........................................................................................................................................ 2
Thanks go to:................................................................................................................................................. 2
Creating your ship in Gmax and ms3d ................................................................................................ 2
Exporting your ship to MS3D................................................................................................................. 12
Adding your hardpoints, textures, and generally: finishing up in MS3d. ............................ 13
The different Hardpoints.......................................................................................................................... 13
Placing your hardpoints ........................................................................................................................... 15
Fixed Hardpoints......................................................................................................................................... 15
Interior hardpoints..................................................................................................................................... 16
Revolute hardpoints .................................................................................................................................. 16
Placing your textures ................................................................................................................................ 17
Exporting the .cmp file............................................................................................................................. 18
THE MAT FILE-using the automated mat converter or the traditional way........................ 19
Making the Mat file the classic way ......................................................................................................... 20
INI EDITING YOUR NEW SHIP............................................................................................................... 22
SUMMARY:................................................................................................................................................. 28
Make your ship buy-able at a base..................................................................................................... 29
How to create your infocards and insert the ship into the game (finally.) ......................... 31
LOD ranges....................................................................................................................................................... 39
Creating the mod folder and importing it into flmm.................................................................... 39
Station codes ..................................................................................................................................................... 41
Frequently Asked Questions:................................................................................................................. 44
Leave the x, y, z, values at 0.0 that will center our box on the grid.
Enter 3 in the length segs and width segs boxes of the parameters, and in the keyboard
entry area, give our box a length of 50, width of 30 and a height of 10. Then click the
create button.
You should have this:
Go ahead and
select the
top/middle face
of the cockpit
and move it up 1
using the z
button you used
before.
Then go back to the red box at the top of the mod menu and click the
button with the 3 red dots this allows us to edit vertexs.
you see the points? Points = VERTEXS
Move these down 1 y unit and down 2 z units using the bottom buttons you used before
to move things.
Click the arc rotate tool so you can rotate the perspective
view until you see the back of our ship. Then select all of
the back faces. We are now going to use the cut tool to slice
these faces in half.
Open up ms3d and click file->import->quake3 .md3 and select your ship. Right click on
the 3d view and select flat shading.
Hp|Fixed|HpThruster01
Fixed to one sied of the tail
Hp|Fixed|HpTractor_Source
this can go anywhere inside the ship, you wont see it.
Hp|Fixed|HpShield01
preferably stuck to the bottom middle of the ship where its not so accessible to fire.
Hp|Fixed|HpMount
imagine this is the ground, cause this is the point your ship lands on put it to far under
though and youll be floating 10 feet above the floor.
Hp|Fixed|HpConTrail01
Hp|Fixed|HpConTrail02
Hp|Fixed|HpConTrail03
These are the points that create those lines coming off of the tips of your wings. One on
each wing tip and one off of the tail.
Hp|Fixed|HpCM01
Your countermeasure. This will be on one side of the bottom rear of the ship.
Hp|Fixed|HpMine01
mine launcher other side of the bottom rear of the ship.
Hp|Fixed|HpRunningLight01
Hp|Fixed|HpRunningLight01
your running lights. These should go on the top of your ship near the front of the wings.
[Hp|Fixed|HpPilot]
In this tutorial we arent going to worry about the pilot, as this is a beginners ship we
wont be messing with transparency. You can find out about this in forums and some
other tutorials.
Hp|Fixed|HpScanner01
Anywhere inside the ship
Hp|Fixed|HpHeadLight
at the nose somewhere
Hp|Fixed|HpDockLight01
Hp|Fixed|HpDockLight01
Top of the tips of your wings your docking lights
Revolute hardpoints are moving hardpoints.
Hp|Revolute|HpTorpedo01
Your torpedo launcher. This should go underneath the ship in the middle
Hp|Revolute|HpTurret01
We will attach your turret to the right side of your tail.
Hp|Revolute|HpWeapon01
Hp|Revolute|HpWeapon02
Hp|Revolute|HpWeapon03
Hp|Revolute|HpWeapon04
Hp|Revolute|HpWeapon05
Your weapons. These will be well placed. 1 on each wingtip, 1 on each wing in the
middle of the wing and 1 on the bottom of your nose. All go on the underside of your
ship.
Interior hardpoints
These are made a bit differently and are very tedious.
billion of them.
For this you want to create a new plane. In gmax this is easy but in this program all you
have to do is select a face already on your ship, duplicate it and move the duplicate out
away from the ship. Then you can subdivide it by 4 or 3 or however many extra faces
you want. Then you can select a smaller face and duplicate your heart away until you
have all of your interior hps made and named.
Luckily you only need 2:
Hp|Fixed|HpTractor_Source and Hp|Fixed|HpScanner01. Select 1 face, duplicate it and
rename it to a hardpoint and then move the hp anywhere inside the ship you want. Do
this again for the scanner.
Revolute hardpoints
I am not going to show you haw to place all of these either.
These are placed like your fixed hardpoints but somewhere
where you think would be a good spot for a weapon or turret.
Ill show you how to place one weapon and your torpedo by
now you should be able to place the rest on your own, its all
duplication and renaming, while making sure your hardpoint
faces are as small as possible.
Select one face on the tip of the wing, underneath the wing.
Subdivide it till you think its small enough and select the
closest small face to the front of the wing. (this is easier if
you switch your top view to bottom.)
And for the torpedo, move the
view so you can see the underside
of the nose middle mouse button
usually does it. If you dont have
a middle mouse button Im not
sure how its done. Select a face
near the middle if not the actual
middle of the underside of the
nose. Subdivide it as well, and
select a small face, duplicate it and
rename it the torpedo hardpoint.
Notice that Drawer02 has something different in it. While file01 only holds the names of
my documents this Drawer holds the documents themselves.
In the MAT File
Freelancer uses the first Drawer (Material Library) as an index card where it can look up
the information it needs to pull up the textures from the second Drawer.
So we now have to create a MAT File. To prepare make sure to flip all of the textures
you used in ms3d vertically so they are upside down and they must be .tga files.
Open the utf editor.
Finish
the
list
of
textures and in the
material library drawer
you need to give each
texture node a defining
name tag (Dt_name)
and a defining data type
(Type)
-/
material library
texture01
Dt_name
Type
once you are done with that you can start putting in the real info. Switch where it says
interpret data as to string. All Dt_name selections get a string that describes the
texture used in other words you get to retype texture file names AGAIN. Then you get
to type DcDt in every single Type area you have Finally where you have the MIP0
you highlight a MIP0 and click import to import your texture file into the .mat file.
Remember that the textures you import to the .mat have to be flipped vertically to work
in freelancer otherwise you get a white ship, and on a side note: if you notice that your
ship is invisible at any point this isnt a texture problem but a LOD (level of detail)
issue. This is covered more in the .ini file section of this tutorial.
Once you are done importing the textures to the .mat file, click save file and save as
yourship.mat
Thanks again Polish Renegade!!!
You should see this: (note: im using wordpad so I can use colors to youwhat you should
notice and make it easier to see. You should be using notepad. Notepad doesnt change
formats like wordpad so your less likely to get a crash.)
[Good]
nickname le_hull
the hull
category shiphull
redundant but what the heck...
ship li_elite
the package
price 10400
what else the cost of the ship.
ids_name 12003
this is important but will be explained later.
item_icon Equipment\models\commodities\nn_icons\li_elite.3db icon file
In the goods.ini file your ship is broken up into two pieces, the "hull" and the
"package" The hull is the ship and its price, the package is what comes with it.
Copy the le_elite goods entry and put it underneath, so you should have this:
Copy
the
nickname of
the original
hull,
and
search for it
(le_hull).
This will pull
up
the
original
package.
There are two things you should look at in the package: the engine and the power plant.
We are going to be editing both of these so that your ship has a one of a kind engine
and power plant
Copy this section and add it as a new good underneath this one. Rename the package to
yourship_package, and rename the hull yourship_hull. You want to rename the new
goods engine and powerplant as well. Yourship_engine_01 & yourship_power01
Save your progress. Goods.ini, highlight and copy ge_le_engine_01 from the package.
Engine:
There are only three things you would want to edit in ENGINE, the "max_force",
"reverse_fraction", and "cruise_charge_time". If you want to change any of these open
up data\equipment\engine_equip.ini and leave it open for now (you should still have 2
editors open now if you dont get the goods.ini back open again.) Search for the
ge_le_engine_01 entry, and you'll see these stats here:
Capacity is
how much
juice
your
ship holds
Charge rate
is how fast
it
replenishes
The
other
two are the
same,
but
for
the
thruster.
If you want
to make an
unstoppable
ship,
just
make
the
charge_rate
equal
or
more than
the
capacity,
that should
do it.
SUMMARY:
I'll provide an example here for you where you modify the original defender...
You want to double the top speed and charge rate of the defender... in case you didnt
know You pull up data\equipment\goods.ini and search for "li_elite". It pulls up a thing
called a ship hull, so you grab the nickname which is "le_hull" (liberty elite hull). You
search for "le_hull" and find the package entry, which is called "le_package". Inside
le_package, the first two lines that say add-on are "ge_le_engine_01" (engine), and
"li_elite_power01" (power plant). You copy "ge_le_engine_01" and open up
data\equipment\engine_equip.ini. You search for it, and change the 48000 to 96000
(when divided by 600 will be 160). You then close this file, and copy "li_elite_power01".
You then open up data\equipment\misc_equip.ini, search for your power plant, and
there it is. Now you double the capacity, and to keep it balanced, you lower the charge
rate a little. Save, and you're done with the engine and power plant modifications.
Now, that example was without copying and renaming all of the essential components.
If you want your changes to leave the other ships using their original components and
your ship to use these brand new components, follow the steps above where you copied
and renamed all of the essentials.
FYI
The 2nd number:
30, -1, 0, 0, 1, 1, 1
Is your rep requirement to buy a
ship. Dont mess with this unless
ABSOLUTELY necessary.
A ship that is for sale looks like this. Pay attention to the numbers they are important.
Marketgood = gf1_package, 1, -1, 1, 1, 0, 1, 1
A ship that is NOT for sale looks like this.
Marketgood = gf1_package, 1, -1, 0, 0, 1, 1, 1
Did you notice the change? The 1s and 0s after the -1 are significant.
1, 1, 0 = a buyable ship
EXAMPLE:
Here I searched for Planet Crete and since it only has one ship for sale (coe2_package
A.K.A. Titan) all I had to do was copy the last entry and rename it to my ship with the
for sale code. I elected to make the ship non-purchasable until level 30.
Congratulations you now have a buyable ship. However you still need to create the
infocards for the ship so that you can see what its stats are like.
Save your work and get ready.
How to create your infocards and insert the ship into the game
(finally.)
Tools:
FLEd_ids I used this to find the empty infocards and create my new infocards.
Notepad
Lets do it.
This was by far the hardest research job I had in writing this tutorial. And even after its
all done I doubt Ill be able to write this in a way that is completely understandable. If
you dont understand what Im trying to say in this section of the tutorials, Im sorry, I
tried, I will work on an update to this part of the tutorial as soon as I myself have a
better understanding of creating infocards.
Dont let this intimidate you though. We will try to get through this.
Here we go.
OK. Info cards are one of your ways of letting people know the stats of your ship. They
can see this on their screen whenever they are buying this ship or scanning someone
who has this ship. So its kind of important to have a good, creative, and well thought
out infocard.
Open up data\ships\shiparch.ini again. This file is VERY important to us now. You need
this file to make your ship flyable.
Ids_name = 237033
Ids_info = 66567
Ids_info1 = 66568
Ids_info2 = 66608
Ids_info3 = 66569
These are all calls made to ids #s
Ids numbers are what help us store things
like our infocards and names of certain
objects.
Where ids_name makes a
reference to an actual name, ids_info
makes reference to an infocard written in
xml.
Li_elite is the nickname of the ship.
DA_archtype is a link to your .cmp file
you created earlier
And the first material_library is a link to
your .mat file.
Nanobot_limit is just the max your ship
can hold. Same with shield_battery.
Mass affects ships turning and how fast it
speeds up or slows down.
Hold_size is you cargo limit.
At this point I want you to copy that entire ship entry and paste it just before the next
ship entry(thats past the collision groups and simple groups.)
Rename the nickname to yourship.
Edit the da archtype so it knows where your ships cmp is.
Edit the material library so it knows where to find your mat files.
Go ahead and edit your hit points and anything else you might want to change. However
since were using the defender as a guide and I had you place the same amount of
hardpoints on it, I suggest not changing the hardpoints.
Save but dont close.
Lets open up the FLEd_ids program.
As Ive said, infocards are written in XML script. The text box above is where you would
see, and edit, any info a card slot had. The good thing is there are available card slots
in FL. You just have to find them first. So lets use the Search box under the
nameresources.dll you see up there use that pull down menu to select infocards.dll,
then search for the eagle. Type eagle in the search box and click ids_info. You end up
with 2 numbers. If you stick the top number in the ids info box in the upper left and click
the get ids_info? You get some info about a base. Go with the second number for now.
Ok. You should have something like that. From here you could just keep going up in
numbers searching and searching for an empty slot. But ill tell you now that 66615 is
free. I used it for my ship.
You will need 5 ids numbers one is going to be an ids_name the other 4 are ids_info
numbers.
[Ship]
ids_name = 237034
the name of your ship
ids_info = 66570 this is your ships stats
ids_info1 = 66571
is your infocard
ids_info2 = 66608
stats being the value type
ids_info3 = 66572
stats being the actual value
Once you have found a free slot in the ids_info category we can start organizing our
infocard.
Go ahead and enter this: 66571
the upper left of the window.
Now click get ids_info
put the name of your ship like it is in that box. However you should replace the
YOURSHIPNAME with your real shipname and then the type of ship.
Like Scorpion Heavy Fighter. Dont worry about xml here.
Ok so now your ship name and info card are numbers. Now we need your stats.
In the above file excerpt I showed you 5 sets of numbers. Ids_name, ids_info,
ids_info01, 02 and 03.
Ids_info is your stats. However they go farther than that and break it down as well.
Ids_info02, and 03 are identifier and value format respectively
Meaning. In 02 you have your list of stats without the amounts (i.e.: weapon/turrets:,)
and in 03 you have the amounts (i.e.: 6/2.)
Look up Ids_info = 66570 (the patriots stats) copy the xml text and place it in your
next empty empty slot.
Keep track of the ids number! I used 66700
66570 stands for:
<?xml version="1.0" encoding="UTF16"?><RDL><PUSH/><TEXT> </TEXT><PARA/><TRA data="1" mask="1" def="2"/><JUST loc="center"/><TEXT>Stats</TEXT><PARA/><TRA data="0" mask="1"
def="-1"/><JUST loc="left"/><TEXT> </TEXT><PARA/><TEXT>Gun/Turret Mounts:
4/0</TEXT><PARA/><TEXT>Armor: 1300</TEXT><PARA/><TEXT>Cargo Space:
25</TEXT><PARA/><TEXT>Max Batteries/NanoBots:
12/12</TEXT><PARA/><TEXT>Optimal Weapon Class:
2</TEXT><PARA/><TEXT>Max. Weapon Class: 3</TEXT><PARA/><TEXT>Additional
Equipment: M, CM, CD</TEXT><PARA/><PARA/><POP/></RDL>
where we are shown the whole set of stats and their values.
Then in
Ids_info02 = 66608 (once again the patriot) copy the xml text and place it in your next
empty slot. Keep track of the ids number! I used 66701
<?xml version="1.0" encoding="UTF-16"?><RDL><PUSH/><TRA data="1" mask="1"
def="-2"/><TEXT>Stats</TEXT><PARA/><TRA data="0" mask="1" def="1"/><TEXT> </TEXT><PARA/><TEXT>Gun/Turret
Mounts:</TEXT><PARA/><TEXT>Armor:</TEXT><PARA/><TEXT>Cargo
Space:</TEXT><PARA/><TEXT>Max
Batteries/NanoBots:</TEXT><PARA/><TEXT>Optimal Weapon
Class:</TEXT><PARA/><TEXT>Max. Weapon
Class:</TEXT><PARA/><TEXT>Additional Equipment:
</TEXT><PARA/><POP/></RDL>
I put my ship Scorpion Heavy Fighter for sale at Crete so I placed my ships cmp and
mat files in corsair folders. But you can put them anywhere you want. Just make sure
you have the da_archtype and material libraries linked to their location.
After you put your ids_info and ids_name numbers in the shiparch.ini where they
belong, you are done with the editing part of this tutorial. Your ship is buyable, should
have its own infocards, and if we did everything right you should still be able to fly your
ship.
Once youve flown your ship and fixed any bugs you might have found (its impossible to
go over possible bugs here but you can always ask questions in my lancers reactor
tutorial thread,) you can create a MOD ARCHIVE which will allow you to activate the mod
in flmm.
LOD ranges
You may have noticed something in our shiparch.ini that mentioned LOD ranges. Whats
LOD? Thats Level of Detail. This little bugger took me a while to figure out. If this isnt
set right your ship will become invisible. Dont worry too much, this doesnt mean you
have bad textures it just means that the level of detail isnt set high enough.
LOD is shown in meters. Its the distance at which your ship becomes visible to the
camera. And from what I understand a good LOD range for fighters is 0, 2000. Yes
only 2 ranges. It doesnt seem to matter if you use the closest and farthest distances or
if you use the whole range like 0, 25, 50, 75, 100, etc. Freelancer seems to understand
that if a ship is visible at 2k than its visible anywhere between IN YOUR FACE and 2k
away.
Thanks go to Chips for helping me understand this.
Yourshipmod
- Data
- Equipment
Engine_equip.ini
Goods.ini
Market_ships.ini
Misc_equip.ini
- Ships
Shiparch.ini
- Yourship_group
- Yourship
Yourship.cmp
Yourship.mat
- Exe
Namesresources.dll
Infocards.dll
script.xml
Script.xml well thats the script that tells flmm what your mod is.
description. Its xml, of course
<script>
<header name="Scorpion Ship">
<scriptversion>
0.3
</scriptversion>
<author>
[DOA]_Dragon
</author>
<description>
Allows the Scorpion to be bought at Planet Crete.
Created by [DOA]_Dragon
-Freeware</description>
</header>
</script>
This is your
Go ahead and cut and past that into notepad, edit it so you like the description, change
the author, remove the freeware if you want and save it as script.xml in the root folder
of your mod yourshipmod\script.xml. Once you got that set up and WinZip installed,
you can right click your mod folder and select WinZip -> add to WinZip file where you
are going to add .flmm to the end of the name.
Like this:
When you click add, you have your mod. Now
go try it out and if you are happy with
everything send it in to lancersreactor or
lancerplanet.
Congratulations and I hope this tutorial helped
you out as much as writing it helped me.
2003 Drizzt4.0, Jerimiah Meyer, Advanced
Concepts
Station codes
STATION CODES courtesy of Kendo_THM
color coded for easier separation between worlds
once you have found your base in this list copy the
coded name and use the find option to go to it in
your market_ships.ini file.
LIBERTY BASES
Li01_01_Base Planet Manhattan
Li01_02_Base Planet Pittsburgh
Li01_03_Base Battleship Missouri
Li01_04_Base Benford Station
Li01_05_Base Ithaca Research Station
Li01_06_Base Trenton Outpost
Li01_07_Base Norfolk Shipyard