Posted: Thu Nov 29, 2007 4:58 am
The latest version of Thargoid Wars has been updated to fix the mission clash problem. Its available on the Wiki - Version 4.1.
For information and discussion about Oolite.
https://bb.oolite.space/
OK, I recall seeing a newsflash about a colony ship being spotted in system (something). I went to look and nothing was there. I flew around the area and local systems and found nothing either. Are you supposed to run into a colony ship?Commander McLane wrote:As soon as you see the linesNosmoKing wrote:The big question is, when is the damn Deposed mission DONE?in your save-file (or you get an iNews-flash about an Albatross colony ship on your screen, if you don't want to look into your save-file every time).Code: Select all
<key>mission_deposed</key> <string>MISSION_COMPLETE</string>
Sorry for you, but you have cut the wrong lines! This has cost you the right to repair or re-buy a naval energy unit.NosmoKing wrote:<key>military_fiasco</key>
<string>Seek and destroy stolen Military ships. Locate hijacked Leviathan.</string>
<key>mission_TL_FOR_EQ_NAVAL_ENERGY_UNIT</key>
<string>13</string>
Ok, this is what I cut from my save file.
With "Please post the two strings here." I meant that I'd like to know what you have in your save-file in the place of the 'XXXXXX' and the 'xx'. It should be a word in capitals and a number. These help me to determine whether you had actually missed something in Military.oxp, or not.I wrote:But don't worry, we can fix your problem. Please open your save-file and find the lines:Instead of the 'XXXXXX' you should see something else written there, of course; and the 'xx' should be a number. Please post the two strings here. Then delete the four lines, save the file, and remove Military.oxp from your AddOns-folder. As soon as you have finished Deposed, you can put it in again and I'll tell you what to fill in the four lines you have deleted now. Or you can start all over with Military.Code: Select all
<key>mission_military_fiasco</key> <string>MIL_XXXXXX</string> <key>mission_military_fiasco_killcount</key> <string>xx</string>
Code: Select all
<key>mission_TL_FOR_EQ_NAVAL_ENERGY_UNIT</key>
<string>13</string>
Code: Select all
<key>mission_military_fiasco</key>
<string>MIL_PRESTAGE1</string>
Code: Select all
<key>mission_military_fiasco_killcount</key>
<string>12</string>
Using a mission variable to track what mission screen you’re on is a broken pattern, because there’s no way to know when a mission screen is cancelled (for instance, by pressing 1). The correct way to handle mission screens is to use unique strings for the “choices key” dictionary. The new version of the trumble script in 1.70 demonstrates this. The old version demonstrated the broken way.Commander McLane wrote:The crucial line is this one:Because it tells me that you had indeed encountered a lethal (for the mission) mission-clash, and never would have been able to finish military. The mission_military_fiasco variable should only be MIL_PRESTAGE1, as long as you are looking on a mission-screen giving you the choice to work for the military or not.Code: Select all
<key>mission_military_fiasco</key> <string>MIL_PRESTAGE1</string>
Code: Select all
{
"military_fiasco" = (
{
conditions = ("mission_military_fiasco oneof MIL_DELAY, MIL_COMPLETE, MIL_NEVER");
do = (
/**offmission encounters**/
{
conditions = ("status_string equal STATUS_EXITING_WITCHSPACE");
do = (
{
conditions = ("mission_military_fiasco equal MIL_NEVER", "d100_number lessthan 3");
do = ("addShips: leviathan 1");
},
{
conditions = (
"mission_military_fiasco oneof MIL_DELAY, MIL_COMPLETE",
"d100_number lessthan 6"
);
do = ("addShips: leviathan 1");
}
);
},
/**chance mission reset after delay**/
{
conditions = ("mission_military_fiasco equal MIL_DELAY", "d100_number lessthan 2");
do = ("set mission_military_fiasco undefined");
}
);
else = (
{
conditions = ("dockedAtMainStation_bool equal YES");
do = (
/**first military contact**/
{
conditions = (
"mission_military_fiasco undefined",
"score_number greaterthan 1000",
"legalStatus_number lessthan 5",
"gui_screen_string oneof GUI_SCREEN_STATUS, GUI_SCREEN_EQUIP_SHIP, GUI_SCREEN_SHORT_RANGE_CHART",
"mission_offering undefined"
);
do = (
"showShipModel: none",
"setMissionMusic: none",
setGuiToMissionScreen,
"setMissionMusic: military_fiasco_theme.ogg",
"addMissionText: military_fiasco_intro",
"setMissionChoices: military_fiasco_offer1_yesnonever",
"set: mission_military_fiasco MIL_CHOICE",
"set: mission_offering military_fiasco_first"
);
},
{
conditions = (
"mission_military_fiasco equal MIL_CHOICE",
"missionChoice_string equal 1",
"gui_screen_string oneof GUI_SCREEN_STATUS, GUI_SCREEN_EQUIP_SHIP, GUI_SCREEN_SHORT_RANGE_CHART"
);
do = (
"awardCredits: -5",
"setMissionImage: military_star.png",
setGuiToMissionScreen,
"setMissionMusic: none",
"showShipModel: mil-rattle",
"addMissionText: military_fiasco_brief1a",
resetMissionChoice,
"setMissionChoices: military_fiasco_cont1_yesno",
"set: mission_military_fiasco MIL_CHOICE2"
);
},
{
conditions = (
"mission_military_fiasco equal MIL_CHOICE2",
"missionChoice_string equal 1",
"gui_screen_string oneof GUI_SCREEN_STATUS, GUI_SCREEN_EQUIP_SHIP, GUI_SCREEN_SHORT_RANGE_CHART"
);
do = (
"showShipModel: mil-basilisk",
setGuiToMissionScreen,
"setMissionMusic: none",
"addMissionText: military_fiasco_brief1b",
resetMissionChoice,
"setMissionChoices: military_fiasco_cont2_yesno",
"set: mission_military_fiasco MIL_CHOICE3"
);
},
{
conditions = (
"mission_military_fiasco equal MIL_CHOICE3",
"missionChoice_string equal 1",
"gui_screen_string oneof GUI_SCREEN_STATUS, GUI_SCREEN_EQUIP_SHIP, GUI_SCREEN_SHORT_RANGE_CHART"
);
do = (
"showShipModel: mil-hydra1",
setGuiToMissionScreen,
"setMissionMusic: none",
"addMissionText: military_fiasco_brief1c",
resetMissionChoice,
"setMissionChoices: military_fiasco_cont3_yesno",
"set: mission_military_fiasco MIL_CHOICE4"
);
},
{
conditions = (
"mission_military_fiasco equal MIL_CHOICE4",
"missionChoice_string equal 1",
"gui_screen_string oneof GUI_SCREEN_STATUS, GUI_SCREEN_EQUIP_SHIP, GUI_SCREEN_SHORT_RANGE_CHART"
);
do = (
"awardCredits: 100",
setGuiToMissionScreen,
"addMissionText: military_fiasco_brief1d",
"setMissionDescription: mission_military_desc1",
"set: mission_military_fiasco_killcount 0",
resetMissionChoice,
"set: mission_military_fiasco MIL_ACTIVE",
"reset: mission_offering"
);
},
{
conditions = ("mission_military_fiasco equal MIL_CHOICE", "missionChoice_string equal 2");
do = (
setGuiToStatusScreen,
"setMissionImage: none",
resetMissionChoice,
"setMissionDescription: mission_military_desc3",
"set: mission_military_fiasco MIL_DELAY",
"reset: mission_offering"
);
},
{
conditions = ("mission_military_fiasco equal MIL_CHOICE2", "missionChoice_string equal 2");
do = (
setGuiToStatusScreen,
"setMissionImage: none",
resetMissionChoice,
"setMissionDescription: mission_military_desc3",
"set: mission_military_fiasco MIL_DELAY",
"reset: mission_offering"
);
},
{
conditions = ("mission_military_fiasco equal MIL_CHOICE3", "missionChoice_string equal 2");
do = (
setGuiToStatusScreen,
"setMissionImage: none",
resetMissionChoice,
"setMissionDescription: mission_military_desc3",
"set: mission_military_fiasco MIL_DELAY",
"reset: mission_offering"
);
},
{
conditions = ("mission_military_fiasco equal MIL_CHOICE4", "missionChoice_string equal 2");
do = (
setGuiToStatusScreen,
"setMissionImage: none",
resetMissionChoice,
"setMissionDescription: mission_military_desc3",
"set: mission_military_fiasco MIL_DELAY",
"reset: mission_offering"
);
},
{
conditions = ("mission_military_fiasco equal MIL_CHOICE", "missionChoice_string equal 3");
do = (
setGuiToStatusScreen,
"setMissionImage: none",
resetMissionChoice,
"set: mission_military_fiasco MIL_NEVER",
"reset: mission_offering"
);
},
/**second military contact to stage1**/
{
conditions = (
"mission_military_fiasco equal MIL_ACTIVE",
"mission_military_fiasco_killcount greaterthan 0",
"gui_screen_string oneof GUI_SCREEN_STATUS, GUI_SCREEN_EQUIP_SHIP, GUI_SCREEN_SHORT_RANGE_CHART",
"mission_offering undefined"
);
do = (
"setMissionMusic: none",
setGuiToMissionScreen,
"setMissionMusic: military_fiasco_teaser.ogg",
"addMissionText: military_fiasco_disp1",
"setMissionChoices: military_fiasco_disp1_yesno",
"set: mission_military_fiasco MIL_PRESTAGE1",
"set: mission_offering military_fiasco_second"
);
},
{
conditions = (
"mission_military_fiasco equal MIL_PRESTAGE1",
"missionChoice_string equal 1",
"gui_screen_string oneof GUI_SCREEN_STATUS, GUI_SCREEN_EQUIP_SHIP, GUI_SCREEN_SHORT_RANGE_CHART"
);
do = (
resetMissionChoice,
"reset: mission_offering",
"setMissionImage: military_star.png",
setGuiToMissionScreen,
"setMissionMusic: none",
"addMissionText: military_fiasco_message1",
"set: mission_military_fiasco MIL_STAGE1"
);
},
{
conditions = ("mission_military_fiasco equal MIL_PRESTAGE1", "missionChoice_string equal 2");
do = (
setGuiToStatusScreen,
"setMissionImage: none",
resetMissionChoice,
"reset: mission_offering",
"setMissionDescription: mission_military_desc3",
"set: mission_military_fiasco MIL_DELAY"
);
},
/**third military contact to stage2**/
{
conditions = (
"mission_military_fiasco equal MIL_STAGE1",
"mission_military_fiasco_killcount greaterthan 8",
"gui_screen_string oneof GUI_SCREEN_STATUS, GUI_SCREEN_EQUIP_SHIP, GUI_SCREEN_SHORT_RANGE_CHART",
"mission_offering undefined"
);
do = (
"setMissionMusic: none",
setGuiToMissionScreen,
"setMissionMusic: military_fiasco_teaser.ogg",
"addMissionText: military_fiasco_disp1",
"setMissionChoices: military_fiasco_disp2_yesno",
"set: mission_military_fiasco MIL_PRESTAGE2",
"set: mission_offering military_fiasco_third"
);
},
{
conditions = (
"mission_military_fiasco equal MIL_PRESTAGE2",
"missionChoice_string equal 1",
"gui_screen_string oneof GUI_SCREEN_STATUS, GUI_SCREEN_EQUIP_SHIP, GUI_SCREEN_SHORT_RANGE_CHART"
);
do = (
"setMissionImage: military_star.png",
setGuiToMissionScreen,
"setMissionMusic: none",
"addMissionText: military_fiasco_message2",
resetMissionChoice,
"reset: mission_offering",
"set: mission_military_fiasco MIL_STAGE2"
);
},
{
conditions = ("mission_military_fiasco equal MIL_PRESTAGE2", "missionChoice_string equal 2");
do = (
setGuiToStatusScreen,
"setMissionImage: none",
resetMissionChoice,
"reset: mission_offering",
"setMissionDescription: mission_military_desc3",
"set: mission_military_fiasco MIL_DELAY"
);
},
/**fourth military contact to stage3**/
{
conditions = (
"mission_military_fiasco equal MIL_STAGE2",
"mission_military_fiasco_killcount greaterthan 19",
"gui_screen_string oneof GUI_SCREEN_STATUS, GUI_SCREEN_EQUIP_SHIP, GUI_SCREEN_SHORT_RANGE_CHART",
"mission_offering undefined"
);
do = (
"setMissionMusic: none",
setGuiToMissionScreen,
"setMissionMusic: military_fiasco_teaser.ogg",
"addMissionText: military_fiasco_disp1",
"setMissionChoices: military_fiasco_disp3_yesno",
"set: mission_military_fiasco MIL_PRESTAGE3",
"set: mission_offering military_fiasco_fourth"
);
},
{
conditions = (
"mission_military_fiasco equal MIL_PRESTAGE3",
"missionChoice_string equal 1",
"gui_screen_string oneof GUI_SCREEN_STATUS, GUI_SCREEN_EQUIP_SHIP, GUI_SCREEN_SHORT_RANGE_CHART"
);
do = (
"setMissionImage: military_star.png",
setGuiToMissionScreen,
resetMissionChoice,
"reset: mission_offering",
"setMissionMusic: none",
"addMissionText: military_fiasco_message3",
"setMissionDescription: mission_military_desc2",
"set: mission_military_fiasco MIL_STAGE3"
);
},
{
conditions = ("mission_military_fiasco equal MIL_PRESTAGE3", "missionChoice_string equal 2");
do = (
setGuiToStatusScreen,
"setMissionImage: none",
resetMissionChoice,
"reset: mission_offering",
"setMissionDescription: mission_military_desc3",
"set: mission_military_fiasco MIL_DELAY"
);
},
/**final military contact**/
{
conditions = (
"mission_military_fiasco equal MIL_LEVI_DESTROYED",
"gui_screen_string oneof GUI_SCREEN_STATUS, GUI_SCREEN_EQUIP_SHIP, GUI_SCREEN_SHORT_RANGE_CHART",
"mission_offering undefined"
);
do = (
"setMissionMusic: none",
setGuiToMissionScreen,
"setMissionMusic: military_fiasco_theme.ogg",
"addMissionText: military_fiasco_disp1",
"setMissionChoices: military_fiasco_disp4_justyes",
"set: mission_military_fiasco MIL_PRECONGRAT",
"set: mission_offering military_fiasco_fifth"
);
},
{
conditions = (
"mission_military_fiasco equal MIL_PRECONGRAT",
"missionChoice_string equal 1",
"gui_screen_string oneof GUI_SCREEN_STATUS, GUI_SCREEN_EQUIP_SHIP, GUI_SCREEN_SHORT_RANGE_CHART"
);
do = (
"setMissionImage: military_star.png",
setGuiToMissionScreen,
"setMissionMusic: none",
"addMissionText: military_fiasco_debrief",
"awardCargo: 100 Gold",
resetMissionChoice,
"reset: mission_offering",
clearMissionDescription,
"set: mission_military_fiasco MIL_COMPLETE"
);
}
);
},
/**ship encounters**/
{
conditions = ("status_string equal STATUS_EXITING_WITCHSPACE");
do = (
{
conditions = ("mission_military_fiasco equal MIL_ACTIVE", "d100_number lessthan 6");
do = ("addShips: leviathan 1");
},
{
conditions = ("mission_military_fiasco equal MIL_ACTIVE", "d100_number lessthan 17");
do = ("addSystemShips: smship 1 0.2");
},
{
conditions = ("mission_military_fiasco equal MIL_STAGE1", "d100_number lessthan 11");
do = ("addShips: leviathan 1");
},
{
conditions = ("mission_military_fiasco equal MIL_STAGE1", "d100_number lessthan 26");
do = ("addSystemShips: smship 1 0.3");
},
{
conditions = ("mission_military_fiasco equal MIL_STAGE2", "d100_number lessthan 11");
do = ("addShips: leviathan 1");
},
{
conditions = ("mission_military_fiasco equal MIL_STAGE2", "d100_number lessthan 26");
do = ("addSystemShips: smship 3 0.3");
},
{
conditions = ("mission_military_fiasco equal MIL_STAGE3", "d100_number lessthan 11");
do = ("addShips: leviathan 1");
},
{
conditions = ("mission_military_fiasco equal MIL_STAGE3", "d100_number lessthan 21");
do = (
"addShipsWithinRadius: leviathan-pirate 1 wsp 0 0 1 5000",
"addShipsWithinRadius: smship 4 wsp 0 0 1 5000"
);
}
);
}
);
}
);
}
I think oosat 1 is working again and maybe we could use it for large OXPs.Eric Walch wrote:Maybe somebody who has, can update the file on the box (this package is to large to upload at the wiki).