Tar,
Thank you!!
I will add this soon and see how the TOS section works.
Think of it as 2 clocks. One in the EXE and one from the Time file. We can change the Time file, but if the EXE time is not matched to the same a the eras in the Time file then the two will become out of sync. Because the game uses the EXE game clock for almost everything.
The easiest way to test this is to watch for ships to be introduced in the campaign, I spent a lot of time doing this trying to figure out this issue. Initially, I was focused about my TOS scratching my head about how ships that should not be available to buy at the auction kept showing up. I kept playing with the dates of the ships and then I decided to try the other eras. Middle worked exactly as it was supposed to, ships released on their commissioning dates. The rest is explained above.
If you watch the news in the campaign, it will tell you when a ship is commissioned. To properly get your ships commissioned through the eras, your time needs to start at a zero date. For example, when I run my TOS era..every ship is already commissioned in TOS, because the EXE Zero date is 2263, It isn't using the Time file for those things. It is using a time clock in the EXE for missiles, fighters, and ships. The Time file is used for what YOU see and giving YOU a superficial way of changing the start dates of eras and stuff.
If you deviate from the 10-year eras in the TIME file then that is where the problems start.
In a nutshell; Any and all (-) service dates are seen by the game as already commissioned (again watch the Auction you should see those ships available in the auction in and in the News you will never see them). They are not released year by year, I repeat they are not released the year of their in-service date, they are
all released at one time. You would use these (-) in-service dates to supplement your early auction with ships for the first year, until more ships get commissioned.
The start date is 2263 in EXE and 0 in the ships and fighter lists, in a stock campaign starting in the Early era which is 2263 all ships before zero are already commissioned. Then you will see new ships appear with a start date after zero get commissioned on a yearly basis when available. Like you said about missiles, it is set to like a +10, 20, or whatever and that is how it know when to release them. But it uses the start date in the EXE to do this, not the TIME file. The TIME file is only a cosmetic change for the years to appear on the screen as you want them. The Real-Game Clock is based in the EXE at 2263, This RGC is what the ships list and fighter list use to release the ships (watch the news feed in the campaign). That is why it is always based on 2263 in the ships list.
In my mod; if I change this Start year in the EXE 2263 to 2248 then all ships must have +15 added to them for the service dates. Then I should see the TOS ships, and all ships thereafter, commissioned in the proper years after 2248.
So until the other ERA start numbers can be found then we will only have 10-year eras to use, and your Time file must match or ships will not commission in the proper years when starting in different ERAS.
I realise that BPV Matching is the most important for Battles but the game also uses ships from the era, so it is important not to have the AI pulling from a more advanced ERA, because it thinks that that ship is already commissioned. For example; In my mod I was seeing TMP era ships in battle against me in the TOS era, because to the game time started at 2263, not my start time of 2248. This was using a fully stocked shipslist, the only faction modded was the feds, with plenty of ships for BPV availability and matching. So it was not a BPV issue but a time issue.
time.gf
[Clock/StartingDate]
BaseYear = 2263
0 = 0
1 = 10
2 = 20
3 = 40
I asssume these values for 0,1,2,3 are ignored?
The RGC (real game clock) ignores these, however like you said they coincide with the ERA's that are hard coded in the EXE. If you change them you will see your campaign era start when you think it should start. Meanwhile, the RGC is always starting at 2263. That is why missiles will not be commissioned correctly because you cannot change the service dates like you can fighters.
You can easily prove what I have said.
Change your TIME file start date to 2258 then find a couple of ships or fighters and change their service date to 1,2, and 3. Then start the campaign in the early era. Even though you will see the year as 2258 when one year passes (2259) ship/ftr 1 should be available and show in the news feed and so on and so on.
So just to reiterate, the 0 year in ships list and fighter list are directly linked to the start year in the EXE, not the TIME file. So when you change the start year in the EXE to 2248 in my case. A ship with an in-service date of 2 will show up in 2250. Not 2265 as intended by the original numbers in the ships list. You would have to change all of the in-service dates to compensate for this change, but ships will commission properly on the date they are supposed to.
Another example, let us say I wanted to do a TNG mod with a start year of 2363 for sake of easy numbers. Let's assume I am starting from scratch with all new ships. Using the stock game file, and using the fictional in service dates, I would have to add 100 to all my ships, for them to come out on actual start date...but guess what! Since the RGC is still starting at 2263. I would have to wait for 100 years to pass in the game for those ships to show up at the auction and be commissioned and show up in the news feed. To make that work, you would have to do some fancy trickery and not use actual in-service dates of the ships, they would all be based on 2263 and 10 year eras. While changing the TIME file to give you the proper visual of the proper year passage.
What if someone wanted to do a real multi-era mod from Pre-TOS to TNG? Naturally, they are limited to 4 ERAS because of the game, so they have to compensate by stretching out each ERA. Do you see where I am going with this? If we can find those additional dates of the +10, +20, and +30 in the EXE, then we can make much better mods where time flows correctly and then we are not locked into a 10 year ERA because of the EXE.