Creating and adding ships (general overview)

THIS PAGE IS UNDER CONSTRUCTION BY DJ CURTIS. PLEASE DO NOT ADD OR MODIFY INFORMATION UNTIL THIS NOTICE HAS BEEN REMOVED.

This is general guide to what is involved with creating and adding a ship to Star Trek: Bridge Commander. It does not include specific step by step instructions on how to complete/achieve each task.

1. The first step in creating a new ship is to build a model (aka mesh). This will require you to have a 3d modeling program.

a) Several of the more popular modeling programs used by Bridge Commander modders include:

3d Studio Max A very powerful modeling and animation tool. Considered by many to be the premier program to use when modeling. Any version can build a mesh, but only 3DS Max 3 is able to support the export plugin to BC's native .nif file format. Many modders who have newer versions use a program called NifSkope in the conversion process. 3DS Max is prohibitively expensive though, and can take a great deal of time to become proficient with.
GMAX A stripped down version of 3DS Max available for free download on the internet. Has all the tools necessary to build a mesh, and is easy to find. NifSkope will be required for conversion to .nif format.
MilkShape 3D Originally created to edit Valve's: Half Life, MS3D is an inexpensive modeling program that can be downloaded from the internet. It is significantly less capable than 3DS max, and creating error free or unified meshes can be difficult. MS3D can be used in the import/export process of .nif files.
Blender A capable modeling/animation program not commonly used in the BC community.
Lightwave Another capable modeling/animation program not commonly used in the BC community, but very popular amongst sci-fi modelers.
NifSkope A .nif model viewer/importer/exporter. Developed by NifTools, this program can be n invaluable resource for modders who do not have access to 3DS Max 3.

b) Quality meshes for BC should be fully unified/welded for optimal damaging in-game, as well as to minimize other graphical anomalies.

c) Bridge Commander is capable of supporting a wide range of polygon counts in meshes:

Range Poly Count Result
Low 2000-5000 Depending upon complexity of the mesh, the ship's geometry may appear simple and/or unrefined in-game. A well made mesh in this range will damage and play well.
Medium 5000-13000 Considered by many to be the ideal range for a mesh. A good balance of performance and aesthetics. A well made mesh in this range will damage and play well.
High 13000-22000 Meshes in this range have become increasingly common in the last few years. In BC's early years, these counts were considered prohibitively high, however, hardware advancements have brought this range well within reach. A well made mesh in this range will damage and play well on most computers. Older computers may experience some challenges with physical damage turned on in the game.
Extreme 22000+ Few ships exceed this count. A fully unified/welded mesh will likely return good results, though extremely high poly count ships in the 40,000+ range have caused serious problems with damage effects. Any modeler working in this poly range should be very careful to thoroughly check their mesh for errors and un-welded vertexes.

d) The .nif model files for ships in ST:BC are stored in \Bridge Commander\Data\Models\Ship\*name of ship*

2. A completed mesh will require textures. Textures are image maps that are applied to a mesh through the process of UVW (coordinate plane) mapping. A good analogy to understand texture is: The application of wet newsprint to a balloon to create a paper-mache.

a) Several of the more popular texture creation programs used by Bridge Commander modders include:

Adobe Photoshop Many versions of this program have been created, all capable of creating a texture set. Can take a great deal of time to learn, and is expensive, but is considered by many to be the standard for texture creation and is used by many modders in BC.
Paint Shop Pro A less expensive alternative to Photoshop, and equally powerful in many respects. Used by many modders.
GIMP A free texture creation program that is simple to use and free. Has been gaining popularity amongst new modders as well as those on a tight budget.

b) Ships in ST:BC use textures in a 32-bit .tga format.

c) ST:BC can support three levels of textures that can be changed in-game. Each level has a corresponding selection in the game's options menu, and can greatly affect the game's performance.

d) Textures for ships in ST:BC are stored in \Bridge Commander\Data\Models\Ship\*name of ship*\High (or Medium or Low)

e) Textures for ships in ST:BC must have a resolution that is a factor of 2, and correspondingly, the height and width of a texture map must also each be a factor of 2.

f) Textures will appear most uniform if the texture map has an even height and width (creating a square map).

g) Bridge Commander is capable of supporting a wide range of texture resolutions for meshes:

Range Resolution Result
Very Low 256 x 256 Aesthetically poor with exceptional performance.
Low 512 x 512 Aesthetically poor with exceptional performance.
Medium 1024 x 1024 Aesthetically adequate-good with good-excellent performance on many computers. The majority of BC's ships use textures at this resolution.
High 2048 x 2048 Aesthetically exceptional with good-poor performance on many computers. Performance will depend greatly on how many ships with high resolution textures are present. Most new high-quality ships are released at this level of resolution.
Very High 2048+ x 2048+ No ships for BC currently use textures above 2048 x 2048 at the time of writing, however at least one is under construction.

h) Textures in ST:BC are the most taxing graphical element of the game. Too many high-resolution ships will significantly decrease the game's performance.

3. A fully modeled and textured ship will need to be exported to .nif format.

There are several ways to export a ship to ST:BC, with varying degrees of complexity. Exporting from 3DS Max 3 will yield the best results, as the original models for BC were created using that program, and the .nif exporter available with the BC Software Developer Kit (SDK) is built for use with Max 3. Some other programs that can be used in the export process include NifSkope and MS3D.

The export process is different depending upon which program you have used to create your ship model.

Ships should be exported to: \Bridge Commander\Data\Models\Ship\*name of ship*

4. An exported ship must be scripted.

Scripting can be an involving task, and may include many components. All ships must include the following three scripts to function:

Type Location Function/Purpose
Ship Script \Bridge Commander\Scripts\Ships\ Registers that the ship exists. Tells the program where to find textured for the model as well as assign damage values.
Ship Hardpoint \Bridge Commander\Scripts\Ships\Hardpoints\ This is the script that gives the ship properties, such as: Hull, weapons, engines, etc., and assigns them strengths. Hardpoints can be edited/created manually with Notepad or using the Model Property Editor (MPE) available in the BC SDK. Associated sound and/or weapon and/or custom tech scripts may need to present in the game's file structure in order for the HP to function properly.
Ship Plugin \Bridge Commander\Scripts\Custom\Ships\ Registers the ship in the menu structure and allows for things like naming (menu) and ship info. Must be present to be able to select the ship from the menu.

There are also many other types of scripts that may or may not be used by a ship, depending on what the ship is capable of, including: MVAM (saucer separation), shuttle launching, and special technologies or weapons.

BC uses a scripting language called Python. It is extremely exacting, and even small errors in capitalization or spelling can cause non-functional ships and/or game crashes. Some errors will prevent the game from launching, or giving the user what has come to be known as the Black Screen of Death (BSOD)- a commonly known and well-understood phenomenon.

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License