Perfect Plan Standalone Release

Kyran

Rear Admiral
Finally I'm releasing the latest version of my mod for Flight Commander. This version features entirely new com and audio messages, a few new ships, two new missions and a new briefing that takes full advantage of Flight Commander 1.5.

WC_Janni_Ingame.JPG

This screenshot shows one of the new com videos.

UnrealImage.PNG

The amazing scripted briefing. :)

PPA12-1.png

PPA12-2.jpg


More screenshots are available here.

Bugs
• Pilots may announce their death and then complain about getting shot.
• Com videos sometimes don’t play and the same message is repeated a number of times.
• Random crashes in Mission 1 and others if the player shoots the Masquerade's guns.
• Mission 2 only has two endings instead of three. This mission is meant to have three different missions sprouting from it however it only does two. This is related to my failed attempts at making global variables.
• Mission 3 in the Bearcat is very hard thanks to the enemy ships attacking and getting stuck in your capital ship.

What’s New
• Five new ships, the Bearcat, Hellcat, Ferret, Avenger and Personnel Transport.
• Two new missions.
• Two variants to already existing missions.
• Many bug fixes and changes in the old missions.
• New video and audio.
• New splash screen.
• New menu screen.
• New characters.
• Modified Gauntlet incorporating Perfect Plan content (ships, video, audio).
• Three flyable ships in the campaign, Bearcat, Ferret and Scimitar (many more available in the simulator).

Things To Note
• All the missions are available via the load game menu.
• The scimitar version of Mission 3 and 4 cannot be played in the campaign.
• The Alliance Mission is my personal favorite.
• Dumb-fires are your friend.
• Not all input devices are created equal. The keyboard is much faster then the mouse, however, harder to use.
• Use the simulator to get used to the game.
• The Lancer Hellcat (only available in the simulator) is a neato ship. ;)

You can download this version (Beta 1.2) here.
 
First of all, great release, really enjoyed seeing the new comms, the menu, the cutscene, and the new briefings.

Some minor bugs:
You can speed up the main menu very easily: Make the picture have the following dimensions:
1024x512. But don't stretch it. Put your existing image in the lower left hand corner. All will work well, and fast.

Also, in one of your missions, if you play from the command line, you can see that Flight Commander tells you
it cannot run a script function because one of the ships does not have its shipid set. You should go through and read the
error message so that your scripts work.

Please let me know about your global variable problems, let's debug these until they work.
 
Some minor bugs:
You can speed up the main menu very easily: Make the picture have the following dimensions:
1024x512. But don't stretch it. Put your existing image in the lower left hand corner. All will work well, and fast.

Mm, I had no idea there even was slow down. Fixed regardless.

Also, in one of your missions, if you play from the command line, you can see that Flight Commander tells you
it cannot run a script function because one of the ships does not have its shipid set. You should go through and read the error message so that your scripts work.

The error, "Illegal image, not a power of two" takes up my entire log so I'm unable to check. :( This has something to do with my codec (Cinepak Codec). :) I would have used one that worked, but Flash has limited options, and the fuzzy effect kind of works. Don't know what I'll do when it comes time to encode the cut-scenes. :rolleyes:

Please let me know about your global variable problems, let's debug these until they work.

The computer I developed this version on didn't have internet access or Java so all changes were done with a text editor and without reference. The computer however had Flash 9 which is why I've got all the new content. :D

Code:
function afterMission()
  if savedvars.choice == 1 then -- Scimitar
    Gameflow_setNextMission("PerfectPlan3Scimitar.Mission.xml");
  elseif savedvars.choice == 0 then -- Bearcat
    Gameflow_setNextMission("PerfectPlan3.Mission.xml");
  elseif savedvars.choice == 2 then -- Alliance
    Gameflow_setNextMission("PerfectPlanAlliance1.Mission.xml");
  elseif savedvars.choice == 1 then -- Scimitar
    Gameflow_setNextMission("PerfectPlan3Scimitar.Mission.xml");
  end
end
Now here is a snipit of the gameflow. savedvars.choice is the value which is set in Mission 2. By default savedvars.choice is set to 0 (set in mission 1).

Code:
<campaign name="Perfect Plan" playername="Stephen">
<mission file="PerfectPlan1.mission.xml" lose="PerfectPlan2.mission.xml" win="PerfectPlan2.mission.xml" prelaunch="none"/>
<mission file="PerfectPlan2.mission.xml" lose="PerfectPlanAlliance1.mission.xml" win="PerfectPlan3.mission.xml"/>
<mission file="PerfectPlan3.mission.xml" win="PerfectPlan4.mission.xml"/>
<mission file="PerfectPlan3Scimitar.mission.xml" win="PerfectPlan4Scimitar.mission.xml"/>
<mission file="PerfectPlan4.mission.xml" win="PerfectPlan5.mission.xml" prelaunch="none"/>
<mission file="PerfectPlan4Scimitar.mission.xml" win="PerfectPlan5.mission.xml" prelaunch="none"/>
<mission file="PerfectPlan5.mission.xml" win="PerfectPlanStand1.mission.xml" lost="PerfectPlan5fail.mission.xml" prelaunch="scramble"/>
<mission file="PerfectPlan5fail.mission.xml" prelaunch="none"/>
<mission file="PerfectPlanStand1.mission.xml"/>
<mission file="PerfectPlanAlliance1.mission.xml" lose="PerfectPlan4.mission.xml"/>
</campaign>
Right now its using the campaign file to set the mission.

Code:
function afterMission()
  print( savedvars.choice);
  nextmission = savedvars.choice;
  if nextmission == 1 then -- Scimitar
    Gameflow_setNextMission("PerfectPlan3Scimitar.Mission.xml");
  elseif nextmission == 0 then -- Bearcat
    Gameflow_setNextMission("PerfectPlan3.Mission.xml");
  elseif nextmission == 2 then -- Alliance
    Gameflow_setNextMission("PerfectPlanAlliance1.Mission.xml");
  elseif nextmission == 1 then -- Scimitar
    Gameflow_setNextMission("PerfectPlan3Scimitar.Mission.xml");
  end
end
I also tried assigning it to another variable.
 
I gave it a quick shot and it seemed good. The main issue I had was that the main menu was very very laggy. Every other menu was fine and spaceflight was fine. I had a wierd distortion issue with the comm videos though and they were streched down and on a diagonal. They didn't interfere with gameplay though, but you couldn't really tell what was supposed to be showing. I had another issue where my taskbar wouldn't go away so I ended up clicking it a lot accidentaly in flight though that could have been something I did. Eventually the whole thing crashed though so I should give it a more thorough shot when I have some more time.
 
I had a wierd distortion issue with the comm videos though and they were streched down and on a diagonal.

Codec problem. The K-Lite Codec pack should fix that problem.

I had another issue where my taskbar wouldn't go away so I ended up clicking it a lot accidentaly in flight though that could have been something I did.

No idea what could cause that.

The main issue I had was that the main menu was very very laggy.

I've already fixed that issue. When I get a few more bugs squashed and get the new exe I'll release a patch.

Do you have an AMD or Intel CPU?
 
The error, "Illegal image, not a power of two" takes up my entire log so I'm unable to check.

You need to get rid of this error message. It means one of your images or videos isn't a power of 2. Powers of 2 are 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, ....

Fix this first, so you can get to your error messages.

It shouldn't matter what CPU they are on.
 
You need to get rid of this error message. It means one of your images or videos isn't a power of 2. Powers of 2 are 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, ....

Thats bad. All my videos are 125x125 instead of 128x128. I'll try to fix it when I get access to the computer I made them on.

eddieb said:
It shouldn't matter what CPU they are on.

It shouldn't, but it might. :D I only tested this on AMD and I didn't experience any menu slowdown. Of course, all my computers are setup the same way. :D

eddieb said:
Also, in one of your missions, if you play from the command line, you can see that Flight Commander tells you it cannot run a script function because one of the ships does not have its shipid set. You should go through and read the error message so that your scripts work.

I found those errors in both variants of Mission 3. Fixed them. I had no idea that all the ships needed an id for a script to work.
 
Alright, all the videos have been coloured and resized.

I managed to die on Mission 6 during an auto pilot. :D All I need to do is fix that little bug and get that gameflow/global variables thing working. Any ideas on what I'm doing wrong?
 
Good work, Kyran! :)

Just by looking at the sheer number of data files it's clear that you've put a lot of effort into the mod -- oh, and props to eddieb too for all the work on Flight Commander.

I didn't find the menu that laggy, but I think if you could bound the cursor to the menu and prevent it from moving 'off the screen' then menu navigation would be easier.

The briefing works well and the comms were also a nice return to the animations of the earlier WC games -- did you draw and animate them yourself? I had some fun in the simulator and had a bash at the missions, but with some of them I would autopilot to the nav point and either no enemy targets would appear or I would only be able to autopilot back to the carrier. Do I need to trigger something? Some of the comms seemed intermittent, so I may have missed something.

The simulator ship variety is neat, but no matter which one I tried I generally found myself in an endless loop trying to swing round to engage the other (with them doing the same) as if the differing speeds of each fighter were the same. Afterburning didn't help, only drastically reducing speed and then accelerating again, before getting stuck in the same combat loop again. Are you able to add some more AI routines to the combat or perhaps start the gauntlets with the craft placed farther apart?

In a future release, would it be possible to structure the bulk of the data files into their own sub-directories and only have just the executable and maybe a readme file in the root directory? As someone unfamiliar with the mod, I found scanning through over 1300 files for the exe, any config files and/or a readme a bit daunting, especially with no installation instructions.

Anyway, keep up the good work and good luck!

Bryn
 
The briefing works well and the comms were also a nice return to the animations of the earlier WC games -- did you draw and animate them yourself?

Yep.

I had some fun in the simulator and had a bash at the missions, but with some of them I would autopilot to the nav point and either no enemy targets would appear or I would only be able to autopilot back to the carrier. Do I need to trigger something? Some of the comms seemed intermittent, so I may have missed something.

I'm aiming at having a variety of missions. This includes missions where nothing happens. :D Those missions are just to move the story along. I just haven't put the story content in yet. :) Its not obvious but the player does get mail during the course of the campaign.

readyroom_locations.jpg

I hope Eddie doesn't mind me hot-linking.

The simulator ship variety is neat, but no matter which one I tried I generally found myself in an endless loop trying to swing round to engage the other (with them doing the same) as if the differing speeds of each fighter were the same.

Yeah, thats the way the AI is unfourtuatly. The two ships I fly are the Lancer Hellcat and the Romeo Bearcat. I modified these ships so they have insane turn rates to compensate. The tactic I use is to afterburn away, use F4 to check when their at a distance, the turn and fire. Another way is to come to a stop then turn. :) Also, the AI doesn't use input devices so it always moves as fast as possible. I've also noticed that the keyboard is much faster then the mouse. :(

In a future release, would it be possible to structure the bulk of the data files into their own sub-directories and only have just the executable and maybe a readme file in the root directory?

Thats just the way Flight Commander is. I think it could be possible for some of the files I create to be in their own directory.

Hey Eddie, would these this work?

Code:
dofile "scripts/perfectplan_gameflow.lua"
Code:
<shipfile name="Scimitar" image="ships/scimitar/scimitar2d.bmp" mass = "16000"  hitpoints = "150"  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="shipfile.xsd">
   <meshfile numpods = "0"  name="ships/scimitar/scim.mesh.bin">

I've discovered another bug. In vanilla Flight Commander if you send the same comm message after you get a transmission your audio message is repeated.

Input Taunt Command
Taunt Enemy
Enemy Taunts
Input Taunt Command
Taunt Enemy
Taunt Enemy

However, in Perfect Plan the player doesn't have a voice so its the incoming message thats repeated.

Input Taunt Command
Enemy Taunts
Input Taunt Command
Enemy Taunts Without Video
Enemy Taunts

Are there any special formating needed for the messages in Flight Commander? In PerfectPlan5.messages.xml I have a rather large message that gets half of its content removed in-game.
 
Yep.


I've discovered another bug. In vanilla Flight Commander if you send the same comm message after you get a transmission your audio message is repeated.

Input Taunt Command
Taunt Enemy
Enemy Taunts
Input Taunt Command
Taunt Enemy
Taunt Enemy

Are there any special formating needed for the messages in Flight Commander? In PerfectPlan5.messages.xml I have a rather large message that gets half of its content removed in-game.

Can you please file these as 2 separate bugs on the bug report page, please.
Right now you can't have messages more than one line long, I think, but that's something I should add.

Also, why don't you upload a new zip file with all your latest stuff. Again one zip with ALL your latest perfect plan files would be great.
and tell me specifically what mission you're having the scripting
troubles with.
 
Also, why don't you upload a new zip file with all your latest stuff.
Yep, as soon as I get everything fixed.

and tell me specifically what mission you're having the scripting
troubles with.

I posted details here. I'm trying to have three possible outcomes for Mission 2. If the player defects then they go to PerfectPlanAlliance1.mission.xml, if they complete all the objectives they go to PerfectPlan3.mission.xml, and if they fail their secondary objective they go to PerfectPlan3Scimitar.mission.xml. The game follows the campaign file to set the missions instead of looking at my gameflow. :(
 
I can see that you use a
"PerfectPlan3Scimitar.Mission.xml");

but your filename is something different.... mission.xml isn't capitalized is it?

Please do the following:


in here
Code:
function afterMission()
  if savedvars.choice == 1 then -- Scimitar
    Gameflow_setNextMission("PerfectPlan3Scimitar.Mission.xml");
  elseif savedvars.choice == 0 then -- Bearcat
    Gameflow_setNextMission("PerfectPlan3.Mission.xml");
  elseif savedvars.choice == 2 then -- Alliance
    Gameflow_setNextMission("PerfectPlanAlliance1.Mission.xml");
  elseif savedvars.choice == 1 then -- Scimitar
    Gameflow_setNextMission("PerfectPlan3Scimitar.Mission.xml");
  end
end

Please put a print at the beginning of the function, as well as inside every if choice. Then see if and what gets printed, and let us know.
Also, please print out the value of savedvars.choice
I can't really help more till you post the files with the fixed image dimensions, since the image errors make it hard to see anything else.

At first glance, though, I don't see anything wrong with your gameflow script.
 
I've discovered that the choice variable is returned correctly during the mission however the gameflow choice is returned as nil. It would seem that its not saving. Is there a close or save variable command I missed?

Oh, and I also noticed this.
PP121_4.png
 
I've discovered that the choice variable is returned correctly during the mission however the gameflow choice is returned as nil. It would seem that its not saving. Is there a close or save variable command I missed?

Oh, and I also noticed this.
PP121_4.png

Thanks that will help narrow down the saved var bug.
 
OK, I looked at the saved var bug, I think I have a fix.

But there's also a bug in your released mission. I see that if you join the enemies, then the var gets set to 2, and I can see that. But if I just go along the other way, and enter combat with them, I don't see any variables getting set within your mission. I did this by adding

Code:
print("Savedvars is " .. savedvars.choice )

Every time you changed savedvars.choice.

I'll try to fix the debriefing and then release a new executable.
 
Sweet, that fixed it. Works perfectly now. I'll release an update soon.

EDIT: Patch can be download here.

The before and after sceenies and a new one.
WC_Janni_Ingame.JPG
PP121_1.png
PP121_2.png
 
Hey, wait, how did I miss this thread? Anyway, the screenshots seem to suggest that this version is a huge improvement over the previous ones. I'll be sure to play it as soon as possible. :)
 
Back
Top