Aww man. Check in the attitude at the door, Karnak. I'm just plain tired of it. I don't wanna play today.
Unfortunately, there isn't much that can be done at this time. There isn't even a working method to fetch the date from within the script so it's somewhat difficult to gave the year correctly.
WRONG. Time warping happens when you try to shove in really high BPV values in ship classes that have limited ships available like the BCH classes. It can be alleviated by moderating the values put in, widening the class bands and fiddling with the variant settings.
You're still getting time warped ships. You can "alleviate", but the problem still exists.
2- it depends on Magnumman's shiplist API which can slow down the script's startup (and cause problems) if improperly used.
WRONG. Enemy Sweep Patrol running on GW3 is using Magnumman's shiplist API for ship lookups and fighter shiplist lookups. Just have not used it for the final step of ship creation due to the lack of accurate stardate fetching off the dyna. The fact no one has complained about mission load-up times means everything is peachy with MM shiplist API.
No, I'm still right. "if improperly used". "can". It's not like I haven't thought of it.
Rules:
- If *any* of the ships has drones of a certain speed, then it's at least a certain year.
- The results need to be saved onto the HD and reset if the game is exited and restarted (doable). This way the results can be further refined between missions.
- the mGetEra function from within the API is accurate. It will tell you if it's "Early", "Med", "Late" or "Advanced" era.
So,...
Logic of date refinement:
-------------------------
Early: -999 to 0. Slow drones all.
Mid: 1 to 7. Slow drones from 1 to 3. Medium from 4 to 7.
Late: 8 to 36. Medium drones from 8 to 16. Fast from 17 to 36.
Advanced: 37 to 999. Fast drones all.
Method:
What you do is you look at all the player ships in the mission and check out the YFA for it. You cross reference with the Era that the script can supply. You then reference some more with the dronespeeds used, if any drone ships are present.
Because of the slowdowns such calculations may cause, it might be best to do this after the script has already started to save the results for the next mission to use.
It's an interesting idea, but I see 2 big problems here:
1) I don't think any mission scripts should be writing to player Hard-drives
PERIOD.
That's fine. Then you tell me how you'd refine the results between missions then, instead of taking pleasure of just slamming down every idea I
VOLUNTEER. That's the thing about ideas, they too can be refined.
2) What about races that don't use drones? I don't think all the hoops to jump through are worth the trouble. Tweaking of the stand-alone mCreateShip() routines should get it to a tolerable state which will be done after GW3. It actually used to be a lot worse. I remember on SG3 when there were Fed BCHs showing up in 2270. I went a little OTT with high-end ships like HDWs and BCHs this dyna go-around.
I know. That's why they're not the primary method of estimating the year, but just a refinement if they're available. If there are no drones in a mission, then you stick with the results by looking at just the ships. Anything has got to be better than just going by Era like we're doing now.
The main idea for this process is this: If a player is flying a certain ship, then the year of the mission is at least that ship's YFA. Do that for all the players and figure out the highest YFA.
The result is just refinement, as I just said.
-- Luc