|
From: Michael M. <mkm...@gm...> - 2007-09-26 01:01:50
|
See if this helps. I'll talk you through mission 16... Mission Data from the mission_dat.c utility VA[0][16] = 0x20 VA[1][16] = 0x80 Name[16] = "JT MANNED ORBITAL DOCKING", //16 Abbr[16] = "JT ORBITAL-D", //16 None[16][] = 1,0,1,0,0,1,0,2, Mis[16][] = "+1ABC+2ABF+1I+2GDE!|",//16 MMM[16][] = -1,-1,-1, 9, 8, 7,-2,-2,-2,-1,-3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, Dbr[16][] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, mCrew[16] = 3 PC[16][]= 27,18,-1,-1,-1, //16 First the VA stuff is a bitfield for hardware requirements for each pad, the bits are... CAP,LM,SDM,DMO,EVA,PRO,INT,KIC. I can't recall the order but the mission/vab sources can confirm what bit is where... Name/Abbr are obvious The None[] structure holds from [][0] to [][7]: Days, Duration, Docking, EA, LM, Jt Mis, Lunar Mission, and mEq (have to look at the data.h to check this) Ok the Mission string... Mis[16][] = "+1ABC+2ABF+1I+2GDE!|",//16 For reference look up the step letter names in fseq_dat.txt. They're also named in main.c under S_Name[]. The fseq_dat.txt file has the letter and name. Basically it's A-Za-g with some other symbols that can be seen in MissionParse() in mc2.c, also MissionSteps() as well. The '|' is an end of mission on that pad marker (I think). "+1" on the primary pad do steps "ABC" "+2" on the secondary pad" do steps "ABF" "+1" on primary pad do step "I" "+2" on the secondary pad do steps "GDE" with the end of mission being "!". Looking at the failure/death branching stuff.... MMM[16][] = -1,-1,-1, 9, 8, 7,-2,-2,-2,-1,-3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, Dbr[16][] = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, Since there are no lunar/lem/eva missions where the crew goes in different directions we have no death branching values. But they're pretty simple, they jump to the step index within Mis[x][index] and continue the mission from there until the '!'. Failures are the same way. When there's a failure that causes a change of mission step then we just skip ahead or skip into an alternate mission path, usually seen after the first '!'. For mission 16... MMM[16][step] = -1,-1,-1, 9, 8, 7,-2,-2,-2,-1,-3, 0, 0 basically MMM shows that a failure during steps 0,1,2 is end of mission, recoverable failure during step 3 branches us to step 9/recovery. step 4 failure to step 8/reentry, etc... Step 0 is pad 1, A - launch Step 1 is pad 1, B - Orb ins burn Step 2 is pad 1, C - Hardware power on Step 3 is pad 2, A - launch Step 4 is pad 2, B - Orb ins burn Step 5 is pad 2, F - orb act Step 6 is pad 1, I - docking Step 7 is pad 2, G - deorbit burn Step 8 is pad 2, D - reentry Step 9 is pad 2, E - landing/recovery Step 10 is pad 2, ! - done mCrew I think is used during future mission drawing to trigger mission bubbles for a duration or something like that. The PC is the prestige that can be earned for this mission. I hope this helps... Michael |