View Issue Details

IDProjectCategoryView StatusLast Update
0000374FSSCPuser interfacepublic2005-04-24 14:26
ReporterStratComm Assigned Totaylor  
PrioritynormalSeveritytrivialReproducibilityalways
Status resolvedResolutionfixed 
Summary0000374: Campaign missions available in techroom single missions area (attn Taylor)
DescriptionOnce you've started a campaign but are not currently playing it by selecting another (even if the first is unfinished, thanks to the new pilot code) the missions from that (unselected) campaign will be available in the techroom single missions. I haven't quite figured out which, if not all, missions appear like this, but it looks like it's at least all missions not yet encountered. It looks like the campaign file being checked against for attached missions does not include any that the pilot has made progress in other than the currently active one. It's been a problem for a while, though I'm just now realizing exactly why.
Additional InformationC:\Games\FreeSpace2\fs2_open_C20050415.exe -spec -glow -jpgtga -nomotiondebris -2d_poof -rlm -ship_choice_3d -3dwarp -ballistic_gauge -snd_preload -alpha_env -ambient_factor 85

Campaigns currently installed on FS2_root:
FS2 Main
Homesick

Screenshots taken at 1600x1200, and scaled for smaller upload size.

TagsNo tags attached.

Activities

2005-04-19 07:08

 

2005-04-19 07:08

 

taylor

2005-04-19 07:22

administrator   ~0002175

Ehh, yeah I'll have to do something about that. I haven't noticed that before but thinking back I don't think I ever had more than one campaign available when I looked at single missions.

taylor

2005-04-19 07:48

administrator   ~0002176

Wait, this isn't happening for me. Are the campaign files (*.fc2) in the same directory as the missions that aren't supposed to show up?

I just tested and it worked fine with 5 different campaigns. The campaign files get parsed, the mission filenames are read out and are filtered from the list. This is what's supposed to happen but if the *.fc2 files can't be found then it has no way to know if mission is a campaign mission or not.

kasperl

2005-04-19 09:02

developer   ~0002177

Either of you using -allslev?

taylor

2005-04-19 09:14

administrator   ~0002179

I wasn't but trying it gave me the same results. It showed all missions correctly in the campaign view (like it should with -allslev) but the single mission view only showed ones that weren't referenced in any of the *.fc2 files.

StratComm

2005-04-19 19:32

reporter   ~0002184

Last edited: 2005-04-19 19:47

The only campaigns I have installed in my main directory are Homesick and FS2 Main, and both are packed up in their respective VP files just like they are supposed to be. I only have 4 missions in FS2 root/data/missions total and yet I still get a list of campaign missions as well.

Maybe I should try this with a fresh pilot.

Ok, fresh pilot update. Something's still wrong, but this time I can't get the Homesick missions to appear in the techroom. All I get is the FS2 regular missions, always there no matter what I do. I don't have another copy of any of those missions as far as I am aware, and the campaign file is obviously ok since I can actually play the campaign, yet they show up nonetheless.

@kasperl: those are the exact command lines I'm using, but even with -allslev they shouldn't be showing up in the single missions panel.

edited on: 04-19-05 15:47

StratComm

2005-04-22 18:51

reporter   ~0002194

Ok, it gets worse. Using -mod but using the root-level pilot, I now get the same behavior as I did with the old pilot. FS2 campaign selected, only missions in Homesick show up, Homesick selected, only FS2 missions show up. Of course not counting missions that should be single missions.

taylor

2005-04-24 14:26

administrator   ~0002240

Alright found the problem. This is a retail bug too. Basically it runs through the campaign files and stuff all of the mission names in Campaign_missions[] which is MAX_MISSIONS, or 1024, big. It uses this as a hash table to filter out the campaign missions from the single missions. The problem is that it maintains a max count against MAX_CAMPAIGN_MISSIONS which is 100. When it finds 100 missions in a various compaigns it stops and the extra will just show up in the list.

There doesn't seem to be a real reason for this though, likely a coding mistake or old FS1 stuff that didn't get upgraded properly. Easy enough to fix though I want to double check that there isn't any memory leakage with this. Should go in CVS tonight. If after that it still messes up then just reopen this bug.

taylor

2005-04-24 14:26

administrator   ~0002241

Fixered.

Reopen if not 100% fixed in builds after today.

Issue History

Date Modified Username Field Change
2005-04-19 07:08 StratComm New Issue
2005-04-19 07:08 StratComm File Added: singleMissionsSelect_campaignSelected_FS2Main.jpg
2005-04-19 07:08 StratComm File Added: singleMissionsSelect_campaignSelected_Homesick.jpg
2005-04-19 07:22 taylor Note Added: 0002175
2005-04-19 07:22 taylor Status new => assigned
2005-04-19 07:22 taylor Assigned To => taylor
2005-04-19 07:48 taylor Note Added: 0002176
2005-04-19 09:02 kasperl Note Added: 0002177
2005-04-19 09:14 taylor Note Added: 0002179
2005-04-19 19:32 StratComm Note Added: 0002184
2005-04-19 19:32 StratComm Note Edited: 0002184
2005-04-19 19:43 StratComm Note Edited: 0002184
2005-04-19 19:47 StratComm Note Edited: 0002184
2005-04-19 19:47 StratComm Note Edited: 0002184
2005-04-22 18:51 StratComm Note Added: 0002194
2005-04-24 14:26 taylor Note Added: 0002240
2005-04-24 14:26 taylor Status assigned => resolved
2005-04-24 14:26 taylor Resolution open => fixed
2005-04-24 14:26 taylor Note Added: 0002241