After spending most of the day working with the TShips file testing and experimenting, I have come to some monumental conclusions that will rock the socks off all you X2 Mod veterans:
1 - There is no specific, required, or hardcoded order of ships or ship types.
This means you can throw your M3 into the slot previously used by an M1 or M2, or vice versa, with absolutely no ill effects! Unlike X2, X3's TShips file is not hard linked to an OBJ file, so TShips slots are no longer directly linked to a specific ship class or anything else!
2 - There seems to be no upper limit on how many TShips slots are available.
Simply increment the second number on the first line, and put your new TShips declaration ANYWHERE in the file, and you are good to go! This is absolutely dazzling news, and means that modders out there can add as many entries as they want to the TShips file without needing to do anything but change the numbers at the top to match!
I have tested this with upwards of 100 extra ship entries, and each and every one of the entries has appeared in the script editor for use in the game!
This means there is no more patchXX business required at all for modding ships into X3. I am hoping that this also extends to TMissiles, TLasers, and TBullets as well, but I won't be able to look into that for another couple days at least. But the importance of this discovery is of great magnitudes!
TShips Entries
Code: Select all
Body ID
Picture ID
Yaw (1.00000 being 360%)
Pitch (1.00000 being 360%)
Roll (1.00000 being 360%)
Ship Class (*)
TFile Entry (ReadText 17-xxxxx)
Velocity (xxxx / 5 = base, base * 0.10 * tunings = max)
Acceleration (xxxx/10)
Engine Sound
Reaction Delay
Engine Effect
Glow Effect
Reactor Output (xxxx MW)
Engine Volume Low (0-255)
Engine Voulme High (0-255)
Ship Scene File
Cockpit Scene File
Laser Mask (See Below)
Laser Count
Laser Energy (Independent of Reactor)
Laser Recharge Rate (Independent of Reactor)
Shield Type (*)
Shield Count
Missile Mask (See Below)
Missile Count (when equipping ships)
Engine Tunings (0+)
Rudder Tunings (0+)
Default Cargo Space
Max Cargo Space
Cockpit Body
Turret 1 Body
Turret 1 Name
Turret 2 Body
Turret 2 Name
Turret 3 Body
Turret 3 Name
Turret 4 Body
Turret 4 Name
Turret 5 Body
Turret 5 Name
Turret 6 Body
Turret 6 Name
Docking Slots (+ Internal, - External)
Cargo Type (*)
Race (*)
Hull Strength
Explosion Definition
Body Explosion Definition
Particle Emitter (1)
Ship Variant (*)
--- (50)
Class Description (*)
--- (1)
--- (1)
Turret Count
//Maulkye's Notes -----------------------------------------
#Gun Mounts //always +1 for front guns, even with empty
//Repeat the following for each mount
Mount#
Mount#-1
BodyID
Path
#Gun Mounts //always +1 for front guns, even with empty
//Repeat the following for each mount
Next Gun Index #
Number of Guns for this mount
Mount#
Number of Hard Points Defined For this mount
//Repeat the following for # of Hard Points Defined
Gun Index
1
Body1
Path1
Body2
Path2
//End Maulkye's Notes -----------------------------------------
Volume (0)
Price (~ xxxxx * 50 = ingame price)
Price Modifier 1 (25)
Price Modifier 2 (1)
Ware Class (Keep at 0)
Price again
Race Recognition Required for Purchase
Video ID (0)
Pirate Ship (0=No, 1=Yes)
TShips Entry Name (SS_SH_...)
Code: Select all
--- Ship Class ---
- 0=TL
- 1=TS
- 2=M0
- 3=M1
- 4=M2
- 5=M3
- 6=M4
- 7=M5
- 8=Pirate TL
- 9=Pirate TS
- 10=Gonor M6
- 11=M6
- 12=TP
--- Shield Class ---
- 0=1MJ
- 1=5MJ
- 2=25MJ
- 3=125MJ
- 4=1GJ
- 5=10GJ
--- Cargo Type ---
- 0=Tiny
- 1=S - Small
- 2=M - Medium
- 3=L - Large
- 4=XL - Extra Large
- 5=ST - Station
--- Ship Race ---
- 1=Argon
- 2=Boron
- 3=Split
- 4=Paranid
- 5=Teladi
- 6=Xenon
- 7=Kha`ak
- 8=Unknown
- 9=Gonor
- 15=Race 1
- 16=Race 2
- 17=Race 3
- 18=Terran
- 19=Yaki
--- Ship Variant ---
- 0=Normal
- 1=Vanguard
- 2=Sentinel
- 3=Raider
- 4=Hauler
- 5=Miner
- 6=Super Freighter
- 7=Tanker
- 8=Tug
- 9=Luxury Cruiser
- 10=Slave Transport
- 11=Military Transport
- 12=XL
- 13=Extended
- 14=7
- 15=6
- 16=1
- 17=2
- 18=3
- 19=4
** Ship Variants do function properly. Variant 15 is used for BIG super freighters **
--- Class Description ---
- 2016 - Station
- 2020 - Super Battle Ship M0
- 2021 - Battle Ship M1
- 2022 - Destroyer M2
- 2023 - Heavy Fighter M3
- 2024 - Medium Fighter M4
- 2025 - Light Fighter M5
- 2026 - Cruiser M6
- 2030 - Passenger Transport TP
- 2031 - Small Transport TS
- 2032 - Large Transport TL
- 2035 - Pirate Transport TS
- 2039 - Goner Ship
- 2064 - Astronaut
- 2065 - Nav Sat
- 2066 - Squash Mine
- 2067 - Fighter Drone
- 2068 - UFO
- 2080 - Nav Sat MkII
- 2083 - Puller
- 2131 - Kha'ak Cluster
These are binary bit masks, created from a long string of 1's and 0's representing which of a list of lasers/missiles are enabled (1) for this ship. For mods with custom weapons, you'll have to look at the TLasers or TMissiles files to get the exact weapon each number enables, but I've listed all the numbers corresponding to normal X3 weapons. Every line in the TLasers/TMissiles file is represented by a power of two, and for every weapon you want to enable, add its power of two together with that of other weapons you wish to enable, and that sum is your laser/missile mask.
Laser Bits
Code: Select all
1 - AIRE
2 - BIRE
4 - APAC
8 - BPAC
16 - AHEPT
32 - BHEPT
64 - TUG (useless)
128 - AFAA
256 - BFAA
512 - APSG
1024 - BPSG
2048 - GPSG
4096 - Mining Laser (works, but mining doesn't =\)
8192 - AKYON
16384 - BKYON
32768 - GKYON
65536 - Mass Driver
131072 - Ion Disruptor
262144 - APPC
524288 - BPPC
1048576 - GPPC
2097152 - OL (Unknown)
4194304 - X2 M0 KYON (End Fight)
8288608 - Repair Laser
16777216 - APBE
33554432 - BPBE
67108864 - ATERRAN (Unknown)
134217728 - BTERRAN (Unknown)
268435456 - Goner PBE (From Mission 2)
Code: Select all
1 - Mosquito
2 - Wasp
4 - Dragonfly
8 - Silkworm
16 - Hornet
32 - Disruptor
64 - Mosquito ?
128 - Mosquito ?
256 - Mosquito ?
512 - Firefly
1024 - Thunderbolt
2048 - Tempest
4096 - Hurricane
8192 - Blizzard
16384 - Cyclone
32768 - Tordnado
65536 - Typhoon
131072 - Firestorm
262144 - Aurora
524288 - Remote Guided?
1048576 - Mosquito ?
2097152 - Mosquito ?
4194304 - Rapier
8288608 - Firelance
16777216 - Wildfire
33554432 - Windstalker
67108864 - Banshee
134217728 - Mosquito ?
268435456 - Mosquito ?