- UID
- 468
- UCC
-
- 声望
-
- 好评
-
- 贡献
-
- 最后登录
- 1970-1-1
|
Revision history
| 28-06-2007
| Added base ship stats to the .sfd file details section.
|
| Added more info on engine effect positioning in the sfd file details and modeling section.
|
| Updated texture and normal map alpha channel information.
Updated rendering mode information.
Added info about the DrawAlpha variable in the model file section.
Leva provided additional and corrected the information regarding the alpha channel of the diffuse map and normal map, plus the DrawAlpha and rendering mode, cheers.
|
| Changed the tutorial file archive structure.
|
| Fixed miscellaneous spelling errors and formatting.
|
|
| 26-06-2007
| Created
|
Introduction
Basic Steps Overview
Files Overview
File Details
The Model File
The Ship Definition File
The Test Map
The Model
Creating the model
The UV Mapping
Engine Positioning Tip
Ready to Export the Model
Exporting the Model
DirectX Viewer
The Texture
Ready to Export the Texture
Exporting the Texture
The Normal Map
Creating a Normal Map
The Normal Map Alpha Channel
Putting it all together
Modifying the .model file
Modifying the .sfd file
Modifying the remaining files
IntroductionThe purpose of this tutorial is to share my findings in trying to create a custom ship for the game Space Force : Rogue Universe. I don’t know if this guide will qualify as an actual tutorial, but I will use the term “tutorial” for now.
Let me just say that I am not an experienced modder nor a 2D/3D graphics artist or expert. All information presented here is merely how I have done things. I’m sure there are other ways of doing things and I will appreciate any insight that anyone might have available.
Tools used in this tutorial:
This tutorial expects you to have basic knowledge of 3D Studio Max and Photoshop. I will not go too much into details on how to model the ship in 3D Studio or how to manage layers in Photoshop.
Throughout this tutorial I will refer to our ship as “MyShip01”.
At the top you can find links to files related to this tutorial.
Basic Steps OverviewThe basic steps to create a new ship for Space Force are:
Make backup copy of Space Force folder. Create a test map to reduce load time (at least on my machine). Create a model using 3D Studio Max and export it as a DirectX .X file. Create a texture and save it as a Direct Draw Surface .DDS file. Create a normal bump map and save it as a Targa .TGA file. Create the SF mod files, .model and .sfd and .txt - Edit the Ships.cfg and a .system file for enabling you ship in-game.
That is all there is to it! But as I found out there are some details about how you perform the steps that makes all the difference.
Files OverviewFirst let us take a look at all the files related to a ship mod. Below I have listed the files that we need to either modify or create. I have placed a star (*) after the filename if it only needs to be modified, the rest of the files you will have to create for yourself.
File
| Description
| folder: data\ships
|
| MyShip01.dds
| Diffuse texture file (the color map).
| MyShip01.model
| Model definition file.
| MyShip01.tga
| Normal bump map file.
| MyShip01.x
| DirectX model file.
|
|
| folder: data\shipstats
|
| MyShip01.sfd
| Ship definition file.
| MyShip01.txt
| Ship description file.
|
|
| folder: data\cockpits
|
| MyShip01_A.X
| The “outer” model of the cockpit.
| MyShip01_B.X
| The “inner” model of the cockpit.
| Cockpit_MyShip01.dds
| The cockpit texture.
| Cockpit_MyShip01_n.tga
| The cockpit normal bump map.
|
|
| folder: data\globaldata
|
| Ships.cfg*
| The config file for adding ships to the game.
|
|
| folder: data\systems
|
| System_26.system*
| This is the system file for the Solar system. I use that to test with.
|
|
| folder: \maps
| This is our test map file to reduce load time etc.
| test.sfm
|
|
File DetailsNext is a more detailed list of the files we need to create or modify.
More information can be added here in the future.
On the left side is the name and value of the property/attribute used by the SF engine and on the right side a small description.
The Model FileThe model file and the variables
| Description
| \data\ships\MyShip01.model
| This is the model definition file.
|
|
| Model
| The Model property.
|
| {
|
|
| Mesh: myship.x
| The DirectX model file name.
|
|
|
|
| MaterialNum: 1
| The number of materials we use.
|
|
|
|
| MeshDetailTexture: Detail001.tga
| Haven't made my own detail map yet, I assume this is just an extra normal map applied to the model.
|
| }
|
|
|
| AddMaterial
|
|
| {
|
|
| MaterialID: 0
| The material id for this texture.
This is the 3DS Max material group index.
SF material id 0 = 3DS Max material group 1.
|
|
|
|
| MaterialName: MaterialNum0
| A friendly name for the material, I haven't noticed any importance of this one yet!
|
|
|
|
| MaterialRendering: 5
| The SF engine rendering mode for this material,
For now I know about mode 3, 5 and 13.
| Mode 3
| Bump + Specular
| Mode 5
| Bump + Specular + Light Emission
Light emission is controlled by the alpha channel in the diffuse map, see the texture section for more information.
| Mode 13
| Environment shader
As far as I know this mode will reflect the environment, can be used for windows for example.
|
|
|
|
| Texture: MyShip01.DDS
| This is the texture file name.
|
|
|
|
| NormalMap: MyShip01.tga
| This is the normal bump map file name.
|
|
|
|
| DrawAlpha: 0
| This will enable transparency for the model. Transparency information should be included in the normal bump map as an alpha channel.
This enables you to create a transparent “window” in the model to show the interior.
This also enables double-sided rendering, witch means that the back-facing polygons are also rendered. You would probably need to “shell” your model if you want something interesting to show as the interior.
|
|
|
|
| SpecularLevel: 25.000000
SpecularPower: 0.550000
LightPower: 1.000000
EnvPower: 0.200000
EnvLightPower: 0.800000
DrawRefraction: 0
| I haven't played with the rest of these settings.
|
|
|
|
| }
|
|
The Ship Definition FileThe ship definition and the variables
| Description
| \data\shipstats\MyShip01.sfd
| This is the ship stats definition file.
|
|
| Weaponry
Maneuverability
Armor
Shield
Speed
AfterburnerFuel
Jammer
TargetSystem
CargoSpace
CargoWeight
| This is the general statistics of the ship.
The stats are in this format: 0.0 0.0 0.0
The meaning of the numbers are to my knowledge as follows:
| | 1st
| The default value of the stat when buying a ship.
0.1 is 10 points in game and 1.0 is 100 points.
| 2nd
| The listed value + default value shown in the buy screen (I couldn't find any obvious purpose for this value?).
| 3rd
| The number of times you can upgrade the stat.
0.1 is 1 upgrade allowed, max 1.0 = 10 upgrades.
|
|
| ShipType: 0
| The type of the ship. This changes the allowed upgrade slots available in the upgrade/repair screen. (Probably does more, but I haven’t played the game that much yet!)
0 = Light fighter
1 = Medium fighter
2 = Heavy fighter
|
|
|
|
|
|
|
|
| Cost: 1.0
| The price of the ship. So we can easy test the new ship, I set the price to 1.0.
|
|
| ModelFile: MyShip01.model
| This is the model file name for the ship.
|
|
| CockpitTexture: Data\Cockpits\Cockpit_MyShip01.dds
| This is the shared texture for the two cockpit models.
|
|
| CockpitNormalTexture: Data\Cockpits\Cockpit_MyShip01_n.tga
| This is the shared normal map for the two cockpit models.
|
|
| CockpitMesh001: Data\Cockpits\MyShip01_A.X
| This is the "outer" cockpit model file.
|
|
| CockpitMesh002: Data\Cockpits\MyShip01_B.X
| This is the "inner" cockpit model file. (The instruments dashboard thingy).
|
|
| ShipDescriptionFile: Data\ShipStats\MyShip01.txt
| This is the description of your amazing vessel.
|
|
| CameraOffset: 0.0 45.0 -110.0
| This is the camera offset position from you ship. I think it's calculated from the model's pivot center.
|
|
| AddEngine:
| The AddEngine property that adds an engine effect to the ship.
|
| {
|
|
| Scale: 1.0 1.0 1.0
| The Scale resizes the engine effect. 1,1,1 is no resize.
|
| Offset: 0.0 0.0 -20.0
| The position of the engine effect relative to the model’s pivot center. The values are 3DS Max generic units and using a left-hand Cartesian coordinate system. More details of this in the modeling section later in this tutorial.
|
| }
|
|
The global ship configuration file
| Description
| \data\globaldata\ships.cfg
|
|
|
| AddShip: Data\ShipStats\myship.sfd
| To make the ship available in the game, this line must be added.
|
A system file
| Description
| \data\systems\system_26.system
|
|
|
| AddShip: 14
| To make the ship available in a system, this line must be added.
There are 14 stock ships, starting at number 0 through 13.
So for your first ship mod you would use number 14.
|
The Test MapI don’t know about your computer, but on mine the game takes some time to load.
As you will probably need to load again and again to test your model we need to minimize this loading time. I have tried to do that by creating a very simple map by copying the Solar.sfm and removing as much as possible. I kept a space station entity in the map so we have a place to buy our new ships etc.
You can find the test map (test.sfm) in the tutorial zip file.
If anyone have more information about modding a map (or changing any config) so that it can load even faster, please let me know.
The ModelNow that we know about the files needed and we have a test map, it is time to create that model of your dream ship. So fire up Max and start throwing those polygons around.
Since this is not a modeling tutorial I have created a simple “ship”, that is:
A Box! … The Borg Scout Cube
Creating the modelFirst create a box from the “Standard Primitives” menu. Make it around 1 by 1 by 1 meter.
Right click it and convert it to an editable polygon (not necessary, but I like doing that).
The model’s front should face you in the front view port or it will be rendered incorrectly in the game.
And that’s it, we have our basic ship model.
The UV MappingIf we want our model to have a texture we need to add some information to our model so the SF rendering engine can properly place/fit our texture onto our model.
UV Mapping is a complex topic and not one of my strong sides, search the web for UV Mapping tutorials if you want to know more about this secret and mysterious art!
But there is a few quick’n’dirty steps to achieve this (at least for our simple box):
Add an “Unwrap UVW” modifier to the model. Make sure the “Map Channel” is set to 1 in the Parameters rollout. Click the “Edit…” button in the Parameters rollout. From the “Selection Modes” panel, click “Face Sub-object Mode”. From the “Mapping” menu select “Flatten Mapping…” accept defaults and click “OK”. From the “Tools” menu select “Render UVW Template…”. In the “Render UVs” dialog, set width and height to ,for example, 1024 and click “Render UV Template”. In the render output window, save the texture template so you can find it later. Close the render output window. - Close the UVW Editor.
Now we have an image that we can use as a texture template, with that can draw within the “bounds” of the model when making the texture.
(Let me know if I should put some more details into all this UV unwrapping mapping thing)
Engine Positioning TipThe position of the engine “glow” effect is controlled in the ship model definition file. Here you specify an offset of the engine effect. This offset, as far as I can see, measured in 3ds Max Generic Units. That is good, because we can find the exact offset for the engine effect directly from 3ds Max.
You can of course just fiddle with the offset values and test it in-game until its right.
Ok so the model’s front is facing you when looking at the front view port, if not, rotate the model until it does.
3ds Max use a right-handed coordinate system and DirectX use a left-handed coordinate system. SF use a right-handed coordinate system with the Z axis flipped (I think?). Anyways, we need to know what is what when positioning our engine, let’s just move on…
Set the units setup in 3ds Max to “Generic Units” (Customize -> Units Setup…).
Switch the 3ds Max Reference Coordinate System to “World” or “View”.
In the perspective view create a small cylinder (or box). Use AutoGrid so that the pivot of the cylinder is aligned with the ship model. It is the cylinder’s pivot coordinate we will use to determine the offset of the engine effect.
It could look like this:
Move the cylinder into the place you want it and move it slightly out of the model. If the cylinder is too close, or inside the model, the engine glow will look a little weird.
With the cylinder selected and put in its place, it could look like this:
Now notice the X, Y and Z coordinates of the cylinder. This is what we need for the “AddEngine” offset value.
But first we need to convert the coordinates like this:
|
| SF:RU
|
| | to
| Positive X
| | to
| Positive Y
| | to
| Negative Z
|
In other words, the positive Y-axis in 3ds Max is equivalent to the negative Z-axis in SF. The positive Z-axis in Max is equivalent to the positive Y-axis in SF, and finally the negative X-axis in Max is the positive X-axis in SF.
In the last screenshot we have the 3ds Max coordinate of -12.0 , +20.0 , +10.0 – this gives us a SF offset coordinate of +12.0 , +10.0 , -20.0.
I hope this made some since to you, do it a few times and you will very quickly be able to get those engine offsets just right – without starting up the game over and over.
Ready to Export the ModelSo now:
we have created our fancy evil Borg Cube, ready to assimilate everyone we have added an Unwrap Modifier, flattened the UV mapping and exported a texture template - we have the offset coordinates for positioning our engine effect(s).
It is time to export our model.
To export a DirectX .X model from 3DS Max you need a plug-in. I used Pandasoft DirectX Export plug-in from http://www.andytather.co.uk/Panda/directxmax.aspx.
Before exporting there is a list of a few, but important, things to make the model work properly in SF:RU
- Make sure to assign a standard "empty" material to the model.
The exporter doesn’t seem to like too complex materials, I’m not 100% sure about this one so for now just assign a standard material.
- Make sure that the material groups for the polygons are setup correctly.
You can assign different rendering methods and textures to individual material
groups in the ship's .model file using AddMaterial.
Material group 1 in 3DS Max is MaterialID: 0 in the .model file.
- Make sure that your UV map or unwrapper is using Map Channel 1.
When unwrapping the model to an UV map (using the Unwrap UVW modifier) the Map Channel must be set to 1, if not the texture will not map correctly to your model.
- Make sure to center the pivot to the model and move the model to world coordinates 0,0,0
If this is not done then your model will “float off” (be offset) compared to the other models in the game and also positioning engines and camera will seem “weird”. A quick way to test this is to go to the space station in our test map, and view the purchasable ships. You can the see if your model “spins” around an offset center point.
- Make sure the model's front is facing you(front) in the front view port.
When exporting we need to make sure that the model is facing the right direction so that it will not render upside down in-game.
Exporting the ModelOk, now on with the export.
Do a “Export Selected…” and select the “Panda DirectX (*.X) from the “Save as type” dropdown list.
In the Pandasoft DirectX Exporter dialog most of the default settings was used.
Below are a description and a few screenshots of the settings I used.
3DS Max Objects
Output Options
Mesh definition, checked Materials, unchecked (haven't tested if the engine supports inline materials, not sure how it even works hehe, would be nice though) Inline, unchecked Bones, unchecked - Optimize mesh, Normal
Object Types
Geometric, Checked - Dummy, Unchecked
Mesh Options
Mesh normal, checked Mapping coordinates, checked - Vertex colors, checked (don't think this one is needed)
Animation
- I removed the default animation thingy from the list, rest of the options was left alone.
Textures & .fx files
Texture Conversion set to: None Include .fx file, unchecked - Rest of the options was left alone.
X File Settings
DX File Type
- Use whatever you want, the SF engine supports all 3 types. It looks like the stock models are binary without compression.
DX Frame
Coordinate System (IMPORTANT)
- Left Handed Axis, CHECKED
If this option is not set, your model will be rotated 90 degrees on the x-axis.
File Animation Options
- Include Animation options, unchecked
The most important setting is marked with a red circle in the previous screenshot.
DirectX Viewer(optional)
If you have the DirectX SDK installed you can quick test your .X model file by double clicking it. If the viewer does not show your model, well then something was wrong with the export.
The TextureSo now we have our ship model exported as a DirectX model. Then it is time to create the texture.
I actually use 3DS Max to create the base textures using procedural materials, adding as much details in the materials as I can. Then I “bake” the materials applied to the model with the “Render to Texture” feature. After this I use Photoshop to finish the texture adding layers of dirt, scratches and miscellaneous decals.
For now that is outside this tutorial, please let me know if you would be interested in such tutorial or search the web for more information.
Start Photoshop and load the texture template we created with the UV editor in 3DS Max. The texture template gives us the bounds for what will be visible on our model.
Now add layers and draw whatever you like until you find the texture is ready!
Remember to delete the UV template layer!
A few steps are required to make the texture appear correctly in SF:RU and for the DDS exporter to work properly.
No Layers
The Photoshop image must be flattened, use “Layer” -> “Flatten Image” to make all the layers collapse and the only thing left in your layers window will be a “layer” called “Background”.
Alpha Channel for emissive light level
The SF:RU rendering engine use an alpha channel in the texture to determine the emissive light amount of the model/texture. This is only used when the rendering mode for the model is set to “5”.
See the model file description for more information
Use the “Channels” tab, to create a new channel.
The default channel that is created is entirely black, that would mean no specular for our model.
If you want to make some parts of the texture “shine” (emit light) then use the marquee tool to select the area and fill it with white or gray.
Black = No light emission. White = Full light emission. Use gray tones in between black and white to set different levels of light emission.
Ready to Export the TextureTo save your texture as a .DDS file you need a dds plug-in for Photoshop.
I have used the one from NVIDIA: http://developer.nvidia.com/object/photoshop_dds_plugins.html
(I believe they also have a plug-in available for Gimp)
Below is a list of a few things I had to do to make the texture appear properly in-game:
Make sure Photoshop image is flattened
…or the dds exporter will give you an error ("too many layers", or something). If using rendering mode 5, an alpha channel will control the light emission.
…if you have no alpha channel your ship will be the shiniest ship ever! - When saving the texture us "Save as" and select "D3D/DDS" from the dropdown
…don’t use “D3DXTextureFormat”
Exporting the TextureWhen your texture is all done and everything, save it as “D3D/DDS” and the NVIDIA DDS export dialog should pop up.
I used the following settings:
NVIDIA dds format export dialog
Main dropdown: DXT5 - Sub dropdown: 2D Texture
- MIP Map Generation
Select "Generate MIP maps"
Dropdown: 8
The rest of the options were left alone. I'm sure you can tweak allot of things there.
The Normal MapWhat is a normal map?
Briefly: A normal map is an image that gives “depth” or adds the impression of details to a model.
If you want more information, read here: http://en.wikipedia.org/wiki/Normal_map
Creating a Normal MapI know of two ways to create a normal map.
- Using 3D Studio Max
Max has features for “baking” textures. This includes normal maps.
The way I created the normal map for the simple box ship was to create a low-polygon model and a high-polygon model.
Max can then use the high-polygon model to create the texture and the normal map. We then apply the texture and normal map to the low-polygon model in the game. This will give the impression that the low-polygon model has greater details while still keeping the polygon count at a reasonable level suitable for real-time rendering.
There are several tutorials on the web covering this procedure, but let me know if I should some steps in this tutorial or maybe make another one just for this.
- Using Photoshop
Well, to be honest, I don’t know much about how this works. When you installed the NVIDIA plug-in it also added a new filter to Photoshop (Filter -> NVIDIA Tools -> NormalMapFilter).
A simple way of creating a normal map is to just apply this filter to your texture, fiddle with the settings and set what you end up with.
Maybe someone with actual knowledge about the normal map filter in Photoshop could write something? I’d be happy to add it to this tutorial.
The Normal Map Alpha ChannelThe alpha channel in the normal map is used for transparency. You need to enable “DrawAlpha” in Model section of MyShip.model by changing “DrawAlpha: 0” to “DrawAlpha: 1”. This will also enable double-sided rendering. See the model file description for more information.
All black areas of the normal map will be rendered transparent (or won’t be rendered you could say). The texture applied to the inside of the model is the same as applied to the outside. You would probably want to create something interesting inside for it to make sense.
A quick test I did looked like this: nomal map with alpha channel transparency
Putting it all togetherBy now we should have everything we need to add a new ship to the game.
The files we have created so far are:
A model in .X format. A texture in .DDS format. - A normal map in .TGA format.
Before we continue, copy these files to the \data\ships folder.
We still need to create a few more files. These are all plain text files, make copies of the existing files for EMD Interceptor, rename them and modify them.
These files are:
\data\ships\EMDInterceptor.model \data\shipstats\emd_interceptor.sfd - \data\shipstats\emd_interceptor.txt
Copy and rename them into:
\data\ships\MyShip.model \data\shipstats\MyShip.sfd - \data\shipstats\MyShip.txt
Make sure your new files are in the same folders as the original files.
Now need to modify these files so that the game will load our ship model and textures.
Modifying the .model fileOpen the file \data\ships\MyShip.model
Step 1
In the Model section change:
“Mesh: Interceptor001.x” to “Mesh: MyShip01.x”
“MaterialNum: 2” to “MaterialNum: 1”
Step 2
Remove the first “AddMaterial” section.
Step 3
In the last “AddMaterial” section change:
“MaterialID: 1” to “MaterialID: 0”
“Texture: InterceptorEMD.DDS” to “Texture: MyShip01.DDS”
“NormalMap: Interceptor002normal.tga” to “NormalMap: MyShip01.tga”
The .model file should now look like this:
Model
{
Mesh: MyShip01.x
MaterialNum: 1
MeshDetailTexture: Detail001.tga
}
AddMaterial
{
MaterialID: 0
MaterialName: MaterialNum0
MaterialRendering: 5
Texture: MyShip01.DDS
NormalMap: MyShip01.tga
SpecularLevel: 25.000000
SpecularPower: 0.550000
LightPower: 1.000000
EnvPower: 0.200000
EnvLightPower: 0.800000
DrawRefraction: 0
DrawAlpha: 0
}
Modifying the .sfd fileNext, open the file \data\shipstats\MyShip.sfd
Step 1
In the Stats section change:
“Cost: 18800.0” to “Cost: 1.0”
“ModelFile: EMDInterceptor.model” to “ModelFile: MyShip01.model”
“CameraOffset: 0.0 45.0 -130.0” to “CameraOffset: 0.0 45.0 -110.0”
Step 2
In the Stats section change:
AddEngine:
{
“Scale: 2.0 2.0 2.0” to Scale: 1.0 1.0 1.0
“Offset: 0.0 -8.0 -22.3” to Offset: 0.0 0.0 -22.0
}
The .sfd file should now look like this:
Stats
{
Weaponry: 0.0 0.0 0.4
Maneuverability: 0.0 0.0 0.4
Armor: 0.1 0.0 0.4
Shield: 0.1 0.0 0.4
Durability: 0.0 1.0 0.4
Speed: 0.0 0.0 0.4
AfterburnerFuel: 0.0 0.0 0.4
Jammer: 0.0 0.0 0.4
TargetSystem: 0.0 0.0 0.4
CargoSpace: 0.0 0.0 0.4
CargoWeight: 2.0 0.0 8.4
Cost: 1.0
ShipType: 0
ArmorShieldType: 0 1
MaxUpgradeCount: 200.0
ModelFile: MyShip01.model
CockpitTexture: Data\Cockpits\Cockpit_MyShip01.dds
CockpitNormalTexture: Data\Cockpits\Cockpit_MyShip01_n.tga
CockpitMesh001: Data\Cockpits\MyShip01_A.X
CockpitMesh002: Data\Cockpits\MyShip01_B.X
CrosshairOffset: 0.0 20.0 0.0
AngularFriction: 0.98
CameraOffset: 0.0 45.0 -110.0
DisplayImage: Data\hud_interceptor.dds
MiniMapSize: 1.0
PrimaryWeaponIndex: 392
ShipDescriptionFile: Data\ShipStats\MyShip01.txt
HudDirCursor: Data\DirCursor001.dds
HudCursorRot: Data\DirCursorRot001.dds
HudCursorRotHeat: Data\DirCursorRotRed001.dds
HudBigSide: Data\gui_sidelock.tga
HudRadar: Data\Radar001.dds
AddEngine:
{
Scale: 1.0 1.0 1.0
Offset: 0.0 0.0 -20.0
}
}
Modifying the remaining filesOk, almost done now.
Step 1 – The Ship Description
Modify the file “\data\shipstats\MyShip.txt” and put in whatever description you like.
Step 2 – The Global Ship Config
Open the file \data\globaldata\ships.cfg”.
Append the line “AddShip: Data\ShipStats\MyShip01.sfd” to the end of the “Ships” section.
The ships config now look like this:
Ships
{
AddShip: Data\ShipStats\emd_valkyrie.sfd
AddShip: Data\ShipStats\emd_interceptor.sfd
AddShip: Data\ShipStats\emd_fighter.sfd
AddShip: Data\ShipStats\uf_valkyrie.sfd
AddShip: Data\ShipStats\uf_interceptor.sfd
AddShip: Data\ShipStats\uf_fighter.sfd
AddShip: Data\ShipStats\alreani_resurector.sfd
AddShip: Data\ShipStats\chulta_mantis.sfd
AddShip: Data\ShipStats\draglon_explorer.sfd
AddShip: Data\ShipStats\ezodar_starseeker.sfd
AddShip: Data\ShipStats\makkinist_fighterdrone.sfd
AddShip: Data\ShipStats\ord_patrolship.sfd
AddShip: Data\ShipStats\pirate_corvette.sfd
AddShip: Data\ShipStats\pirate_frigate.sfd
AddShip: Data\ShipStats\MyShip01.sfd
}
Step 3 – The System File
We added (kept) a station entity in the test map created earlier, this station is from the solar system map. We want to add the ship to the solar system so that we can purchase our custom ship at the station. (I haven’t found out how to create a custom station yet, that’s why we do it like this.)
Open the file “\data\systems\system_26.system”.
Append the line “AddShip: 14” if we add more ships to the ships config, the number 14 would have to be incremented.
Step 4 – Testing it
Now it is time to try out the new ship model.
Start Space Force and from the main menu press ~ (tilde) to bring up the console.
Type “LoadMap test” and hit enter.
The test map should now load and you should see the distance to the space station somewhere near you. Fly to the station and buy your new ship.
You might want to create a new user profile in the game and use that for testing.
The End
I hope the information here was somewhat helpful. Please let me know if there are any errors, spelling mistakes or misleading information. Also any suggestions on improvements, requests for further details are welcome.
The observant reader might have noticed that I list the cockpit files in the beginning but tell nothing about them in the tutorial. For a couple of my own ship models I have replaced the cockpit models and texture. Let me know if you are interested in more details on how to do that.
Enjoy |
评分
-
查看全部评分
|