I have been working on improving upon gman's SFB-OP shiplist from 2001. I have modified the original list to allow player access to the PFTs and PFs for empires that did not originally have PFs in SFC. I have suspended work on it until the upcoming OP patch is out, as it will likely affect possible design choices.
I have only been using it on a D2 server and for tcp/ip multiplayer. I did run some tests in skirmish too. I have not seen this problem at all. But I have not tried the list on a single player campaign. Have you tried the list you are working with on a D2 server or in multiplayer? Does this problem show up wherever the list is used or only in single player campaigns?
How are you editing your shiplist? (I use excel , it works perfectly and allows for some automation...)
What ships are you adding? Are they from SFB SSDs (pretty sure to work), or are they your own designs? (I'm guessing you may be violating some of the rules of SFC ship construction.)
I have a proposed structure of the damage blob from the ship table of the SQL database for EAW. (I theorise that the blobs in the SQL db are whats left of the flatfile to avoid creating a relational database) In any case this same data is present in each "?AVtShip@@" record of the flatfile of EAW and OP.
The damage blob is 100 bytes of data that must be determined from the shiplist in use. (Reconstructing the damage, stores and officers blobs is what is slowing down efforts to edit a players ships directly.)
The proposed structure of the damage blob:
Code:
Damage Blob
14 14 14 14 00 00 06 06 Lw RW CW IM
05 05 08 08 08 08 08 08 AP UN LB SE
08 08 00 00 10 10 08 08 SC CR FH AH
00 00 03 03 08 08 05 05 CH TC ED TR
05 05 07 07 08 06 00 00 UN BA BR ST
00 00 00 00 08 08 02 02 RP BK DC PB
00 00 02 02 02 02 00 00 AR T1 T2 T3
00 00 00 00 00 00 02 02 T4 T5 T6 T7
00 00 00 00 00 00 02 02 T8 T9 T0 W1
02 02 02 02 02 02 02 02 W2 W3 W4 W5
00 00 02 02 00 00 00 00 W6 W7 W8 W9
00 00 00 00 00 00 00 00 W0 P1 P2 P3
00 00 00 00', P4 P5
Values are in pairs.
First value is Un-Damaged Value.
Second value is Damaged Value.
LW-Left Warp
RW-Right Warp
CW-Center Warp
IM-Impulse
AP-APR
LB-Lab
SE-Sensors
SC-Scanners
CR-Cargo
FH-Forward Hull
AH-Aft Hull
CH-Center Hull
TC-Tractor
ED-Excess Damage
TR-Transporter
BA-Battery
BR-Bridge
ST-Shuttle Bay
RP-Repair
BK-Barracks
DC-Damage Control
PB-Probe
AR-Armor
T1-T0 Torpedo Weapon 1-10
W1-W0 Weapon 1-10
P1-P5 Weapon 11-15
UN-Unsure
The stores (drones,fighters,shuttles,mines,marines...) blob is a bit more complicated as it varies in size from ship to ship but we should be able to work it out given enough time. The officers blob looks pretty simple as it is the same for every ship (looks like it is not in use or is only changed during missions).
The last piece of my puzzle is the shipcachevector in the servcharacter table of the db. I have a good bead on it but have not yet identified a few 4 byte longs (or individual bytes?).
Anyway, I'm rambling, hopefully the rough outline of the damage blob in the database may help you identify the problem with your shiplist.