Author Topic: Pilots after 3.7.0  (Read 1116 times)

0 Members and 1 Guest are viewing this topic.

Hey there,

Ive been looking for some information about "how do pilots after 3.7.0 work" but havent found only scattered information though ive been reading the 3.7.0 release thread.

Here's my story:
 I started playing FS2 again in January so all my Pilots are created with the new code. First ive read that i should use one Pilot for each mod in order not to corrupt them.. so what ive been doing chronologically is the following:

1) Created Pilot 1, played FS2 Main Campaign with 2014's vps

2) Created Pilot 2, played Derelict with 3612 vps

3)Created Pilot 3, played FSPort Main Campaign (with the corresponding vps)

4) at that point i read, that due to the new code in 3.7.0 it wouldnt be neccessary to create a pilot for each mod anymore... which made me somewhat happy, because with all those cool mods around iam sure it can become quite complicated to keep track of what Pilot youre using for which mod...

5) so i stayed with Pilot 3 for the next campaign: Silent Threat Reborn.

6) Yesterday i finished STR (wonderful campaign btw) and decided to stay with FSPort Campaigns for a while as there are some restored campaings mentioned in the STR Thread: Cardinal Spear,  Destiny of Peace, Awakening... I downloaded them and installed them properly (each one gets its own folder in the main directory)

7) At that point i began to experience some "odd" things which are the reason for this thread... First of all: I was in FS2 with STR Mod activated, clicked on the ready room and got the "your campaign is finished, restart it to play it again" message. I left the game and activated one of the 3 mentioned above campaigns (i deactivated STR)

8) As soon as i wanted to join the main hall i got a "your pilot is not fitting for this mod" message (cant recall the exact msg).

9) Now i backed up my pilot files and started some experiments :)

10) I started / restarted some campaigns in the planning room and experienced, that if i go back to FS1 Main Campaign the "overall progress" of my pilot seems to get resetted back to that point where i finished FS1 Main. Just like i would've never played STR with that Pilot. I also figured out that for a pilot, there obviously are 3 different types of files: .hcf (hud config, can be shared) , .plr (this seems to be the "main storage" ?) unique for each , .csg ('campaign save game'?? - seems to be one for each campaign you play).

So, now i'd like to know more about the mechanics of the new pilot files..

Is this bevaviour i encountered working as intended?
Is there a way to accumulate stats of your played campaigns without "going back" to a (hidden) savepoint in the pilot file?
What about "this pilot doesnt fit the mod" message ive got? Am i able to use 1 Pilot for each Mod (without accumulating) ?
What's the file format of .csg and .plr? I am familiar with c, c# and java so iam quite interested to look into this... is there an editor available? (maybe i can write one at some point).
What about Multiplayer Pilots? Ive read that there is no difference anymore. So i can just go ahead in the start screen, click on multi and use my pilots without any troubles?
Ive got some old Pilots, FS2 Retail and ive been wondering if there's a way to convert them - Especially my old pxo Pilot - a lot of love went into there you know :)

Kind regards,
Eagle
« Last Edit: February 10, 2014, 06:16:41 am by Eaglesix »

  

Offline AdmiralRalwood

  • 211
  • The Cthulhu programmer himself!
    • Skype
    • Steam
    • Twitter
Is there a way to accumulate stats of your played campaigns without "going back" to a (hidden) savepoint in the pilot file?
There is no such thing. I don't know exactly what behavior you were seeing without physically looking over your shoulder, but I think you may be misunderstanding how campaigns work in the first place?

What about "this pilot doesnt fit the mod" message ive got? Am i able to use 1 Pilot for each Mod (without accumulating) ?
I've been using one pilot for every mod ever since 3.7.0 throughout several mods with no problems. The error you're thinking of is probably "the campaign for this pilot cannot be found" (or something along those lines; I don't remember the exact wording) which just tells you that the campaign file you most recently played that pilot with isn't there anymore; which is to be expected if you're switching mods. The error should have a button to take you to the campaign room to select a different campaign.

Each campaign tracks its progress separately (with the .csg file, as you no doubt figured out for yourself); the next time you select that campaign, you'll return to that point of progress. You can't play missions from one campaign while another is selected as the active campaign; so if you select, for instance, "FreeSpace: The Great War" as your campaign, you won't see Silent Threat missions in the techroom. Does any of this clear up some of your confusion?
Ph'nglui mglw'nafh Codethulhu GitHub wgah'nagl fhtagn.

schrödinbug (noun) - a bug that manifests itself in running software after a programmer notices that the code should never have worked in the first place.

When you gaze long into BMPMAN, BMPMAN also gazes into you.

"I am one of the best FREDders on Earth" -General Battuta

<Aesaar> literary criticism is vladimir putin

<MageKing17> "There's probably a reason the code is the way it is" is a very dangerous line of thought. :P
<MageKing17> Because the "reason" often turns out to be "nobody noticed it was wrong".
(the very next day)
<MageKing17> this ****ing code did it to me again
<MageKing17> "That doesn't really make sense to me, but I'll assume it was being done for a reason."
<MageKing17> **** ME
<MageKing17> THE REASON IS PEOPLE ARE STUPID
<MageKing17> ESPECIALLY ME

<MageKing17> God damn, I do not understand how this is breaking.
<MageKing17> Everything points to "this should work fine", and yet it's clearly not working.
<MjnMixael> 2 hours later... "God damn, how did this ever work at all?!"
(...)
<MageKing17> so
<MageKing17> more than two hours
<MageKing17> but once again we have reached the inevitable conclusion
<MageKing17> How did this code ever work in the first place!?

<@The_E> Welcome to OpenGL, where standards compliance is optional, and error reporting inconsistent

<MageKing17> It was all working perfectly until I actually tried it on an actual mission.

<IronWorks> I am useful for FSO stuff again. This is a red-letter day!
* z64555 erases "Thursday" and rewrites it in red ink

<MageKing17> TIL the entire homing code is held up by shoestrings and duct tape, basically.

 
Hello there,

Thank you for your reply. Well yes it cleared things up a little b it. So to put this into some numbers.. My Pilot had ~56k Points and some medals after finishing "Freespace: The Great War". Then i took him to play "Silent Threat Reborn". After finishing it he had ~70k points. But as soon as i switched to play "Freespace: The Great War" again (for testing purpose) the progress made from STR dissapeared and the pilot showed with 56k Points and the same Kills, Medals before STR.

So there seem to be savepoints for the start and the End of each campaign as i see it. Those are recalled once you switch back there. I was just wondering if it is possible (representatively for this case) to start "The Great War" with the Progress already made in STR.
As writing this - i just had an idea... maybe delete the Great War Campaign File while keeping the STR.csg?

Regards

 

Offline niffiwan

  • 211
  • Eluder Class
I think I can explain what is going on here.  Stats are saved per campaign which explains why your score returned to 56k when you switched back to "Freespace: The Great War".

Now, in this case if I assume that your score was 56k when you started "Silent Threat Reborn" and was ~70k when you finished, I believe that's a bug that was fixed after 3.7.0 was released. The displayed score probably should have been 70k-56k = ~14k when you finished "Silent Threat Reborn".

Lastly, there is a set of "all-time-all-campaigns" stats stored in the new pilot file, but firstly these are not currently displayed anywhere in game (:nervous:) and secondly there's an outstanding bug with their calculations that needs to be fixed.

edit: I forgot your other original questions:

Quote
What's the file format of .csg and .plr? I am familiar with c, c# and java so iam quite interested to look into this... is there an editor available? (maybe i can write one at some point).
What about Multiplayer Pilots? Ive read that there is no difference anymore. So i can just go ahead in the start screen, click on multi and use my pilots without any troubles?
Ive got some old Pilots, FS2 Retail and ive been wondering if there's a way to convert them - Especially my old pxo Pilot - a lot of love went into there you know :)

The pilot file format is a custom binary format, and there's no editor currently available (if you exclude hex editors! :)).  If you want to understand the format and you can read C/C++, have a look at these files in SVN:
http://svn.icculus.org/fs2open/
  code/pilotfile/csg.cpp
  code/pilotfile/plr.cpp

The same pilots can play singleplayer and multiplayer.

There is a pilot conversion that runs when FSO starts.  It will convert the pl2 to a plr, and it will convert a cs2 to a csg *IF* the correct mod is currently loaded.  The conversion process only runs when it can't find a plr for a pl2 it finds, so converting multiple campaigns is tricky.  You might be able to work around that by:

1) convert campaign X
2) manually delete the new plr but not the csg
3) switch mods and convert campaign Y
4) manually delete the new plr but not the csg
(etc)

Only thing is, the retail pilot format may not convert properly to the 3.7.0 pilot format as there were several format changes between retail and prior to 3.7.0.  You *may* need to convert it to a 3.6.18 Inferno pilot 1st and then convert that to a 3.7.0 pilot.  Or it may fail completely - there still seem to be some bugs in the conversion process :(
« Last Edit: February 11, 2014, 09:35:45 pm by niffiwan »
Creating a fs2_open.log | Red Alert Bug = Hex Edit | MediaVPs 2014: Bigger HUD gauges | 32bit libs for 64bit Ubuntu
----
Debian Packages (testing/unstable): Freespace2 | wxLauncher
----
m|m: I think I'm suffering from Stockholm syndrome. Bmpman is starting to make sense and it's actually written reasonably well...