Career Mode User Guide: Difference between revisions
Randomshadow (talk | contribs) No edit summary |
Randomshadow (talk | contribs) No edit summary |
||
| Line 1: | Line 1: | ||
= FSFO Career Mode User Guide = | = FSFO Career Mode User Guide = | ||
Career Mode | This page explains how Career Mode works in FSFO, including pilot progression, schedules, training, scoring, fatigue, and the permanent flight log. | ||
<div style="margin:0.8em 0; padding:0.8em 1em; background:#eef3fb; border-left:6px solid #1f4fa3;"> | |||
Career Mode uses a local database to track your pilot profile, your active schedule, and your long-term flight history. | |||
</div> | |||
<span id="top"></span> | |||
__TOC__ | __TOC__ | ||
| Line 11: | Line 17: | ||
Career Mode is built around three main areas: | Career Mode is built around three main areas: | ||
* '''Pilot Profile''' | * '''Pilot Profile''' | ||
Your pilot's name, company, rank, tier, balance, location, type ratings, score, errors, contract legs, and training status | |||
<div style=" | * '''Current Schedule''' | ||
Your active scheduled legs | |||
* '''Flight Log''' | |||
Your permanent flight history and performance record | |||
<div style="margin:0.6em 0; padding:0.6em 0.8em; background:#eef3fb; border-left:4px solid #1f4fa3;"> | |||
Use Career Mode if you want persistent progression across multiple flights instead of isolated one-off sessions. | |||
</div> | |||
[[FSFO Career Mode User Guide#top|Back to top]] | |||
---- | ---- | ||
| Line 30: | Line 45: | ||
# Click '''Apply Company''' | # Click '''Apply Company''' | ||
Once accepted, your pilot profile is created and Career Mode | <div style="margin:0.6em 0; padding:0.8em 1em; background:#f4f9f6; border-left:6px solid #5cb85c;"> | ||
Once accepted, your pilot profile is created and Career Mode begins tracking your progress. | |||
</div> | |||
[[FSFO Career Mode User Guide#top|Back to top]] | |||
---- | ---- | ||
| Line 40: | Line 57: | ||
The Career Dashboard includes the following major functions: | The Career Dashboard includes the following major functions: | ||
* '''Rebuild Database''' | * '''Rebuild Database''' | ||
Creates or recreates the local career database | |||
''' | * '''Apply Company''' | ||
Applies for a company and creates your pilot profile if needed | |||
<div style=" | * '''Apply Type Rating''' | ||
Starts type-rating training | |||
* '''Generate Schedule''' | |||
Builds your current schedule | |||
* '''Load Stats''' | |||
Refreshes pilot statistics | |||
* '''Save Options''' | |||
Saves career settings | |||
* '''Flight Log''' | |||
Opens the permanent flight history window | |||
<div style="margin:0.6em 0; padding:0.6em 0.8em; background:#fdf7f2; border-left:4px solid #f0ad4e;"> | |||
<strong>NOTE:</strong> The current <strong>Show Contract</strong> button is not implemented yet. | |||
</div> | |||
[[FSFO Career Mode User Guide#top|Back to top]] | |||
---- | ---- | ||
| Line 56: | Line 88: | ||
== Career Options == | == Career Options == | ||
<div style="margin:0.6em 0; padding:0.8em 1em; background:#eef3fb; border-left:6px solid #1f4fa3;"> | |||
These options affect how schedules are generated, when flights count toward progression, and whether readiness checks can block a flight. | |||
</div> | |||
* '''Start from last airport''' | |||
Requires you to begin your next career flight from your saved current location. If enabled, FSFO checks that you are within 10 NM of the pilot's stored airport before the flight is considered ready. | |||
* '''Fatal crash starts over''' | |||
If enabled, a fatal crash can end your current career and force you to start over. | |||
* '''Must fly scheduled flight''' | |||
Only credits career progress when you complete the next pending scheduled leg in order. If enabled and you do not fly the correct leg, the flight can still be logged, but it will not advance total legs, average score, balance, rank, or career tier. | |||
* '''Passenger comfort''' | |||
Enables passenger-comfort rules so smoother, better-managed flights matter more to your career results. | |||
* '''Can be fired''' | |||
Enables the career rule that allows poor performance or major failures to put your employment at risk. | |||
* '''Enable fatigue''' | |||
Turns on fatigue tracking. If enabled, FSFO checks recent workload and can block career-flight readiness when fatigue rises above the allowed threshold. | |||
* '''Enable fatigue''' | |||
* '''Schedule based on rank''' | |||
Automatically builds schedules using the pilot's current rank and tier to determine the maximum leg distance. If a full schedule cannot be built within that cap, FSFO falls back to the full eligible route set. | |||
* '''Must have type rating''' | |||
Requires the pilot to hold the appropriate type rating before operating aircraft that need one. | |||
* '''Lock schedule until complete''' | |||
Prevents generating a new schedule while an existing schedule still has incomplete legs. | |||
* '''Application based on rank''' | |||
Makes company applications depend on your current rank, including tier eligibility and hiring probability. It also enforces the rejection cooldown for repeat applications. | |||
[[FSFO Career Mode User Guide#top|Back to top]] | |||
---- | ---- | ||
| Line 79: | Line 130: | ||
Companies are loaded from ''Airlines.cfg''. Each airline has a tier. That tier affects hiring rules, contract leg requirements, and pay scaling. | Companies are loaded from ''Airlines.cfg''. Each airline has a tier. That tier affects hiring rules, contract leg requirements, and pay scaling. | ||
<div style="margin:0.6em 0; padding:0.8em 1em; background:#eef3fb; border-left:6px solid #1f4fa3; border-radius:8px;"> | |||
<pre> | |||
Current contract-leg requirements by company tier: | Current contract-leg requirements by company tier: | ||
Tier 1 = 30 legs | |||
Tier 2 = 60 legs | |||
Tier 3 = 90 legs | |||
Tier 4 = 120 legs | |||
Tier 5 = 150 legs | |||
</pre> | |||
</div> | |||
<div style="margin:0.6em 0; padding:0.6em 0.8em; background:#fdf7f2; border-left:4px solid #f0ad4e;"> | |||
If you leave a company before satisfying the required legs, Career Mode can apply a contract-break penalty. | If you leave a company before satisfying the required legs, Career Mode can apply a contract-break penalty. | ||
</div> | |||
[[FSFO Career Mode User Guide#top|Back to top]] | |||
---- | ---- | ||
| Line 111: | Line 168: | ||
* your pay multiplier through Career Tier | * your pay multiplier through Career Tier | ||
[[FSFO Career Mode User Guide#top|Back to top]] | |||
---- | ---- | ||
| Line 122: | Line 179: | ||
* '''Average Score''' | * '''Average Score''' | ||
Your | <div style="margin:0.6em 0; padding:0.6em 0.8em; background:#fdf7f2; border-left:4px solid #f0ad4e;"> | ||
<strong>Requirement:</strong> Your <strong>Average Score</strong> must be at least <strong>92.0</strong> before any promotion is possible. | |||
</div> | |||
<div style="margin:0.6em 0; padding:0.8em 1em; background:#f4f9f6; border-left:6px solid #5cb85c; border-radius:8px;"> | |||
<pre> | |||
Promotion thresholds: | Promotion thresholds: | ||
50 total legs = Second Officer | |||
125 total legs = First Officer | |||
200 total legs = Captain | |||
350 total legs = Senior Captain | |||
</pre> | |||
</div> | |||
If your flight is not credited toward progression, it will not count toward promotion. | If your flight is not credited toward progression, it will not count toward promotion. | ||
[[FSFO Career Mode User Guide#top|Back to top]] | |||
---- | ---- | ||
| Line 141: | Line 204: | ||
Career Tier increases with promotion. Pay is recalculated using a tier multiplier. | Career Tier increases with promotion. Pay is recalculated using a tier multiplier. | ||
<div style="margin:0.6em 0; padding:0.8em 1em; background:#f4f9f6; border-left:6px solid #5cb85c; border-radius:8px;"> | |||
<pre> | |||
Current pay multipliers: | Current pay multipliers: | ||
Tier 1 = 1.00x | |||
Tier 2 = 1.04x | |||
Tier 3 = 1.08x | |||
Tier 4 = 1.12x | |||
Tier 5 = 1.16x | |||
</pre> | |||
</div> | |||
When you are promoted, FSFO updates: | When you are promoted, FSFO updates: | ||
| Line 155: | Line 222: | ||
* your pay per hour | * your pay per hour | ||
[[FSFO Career Mode User Guide#top|Back to top]] | |||
---- | ---- | ||
| Line 163: | Line 230: | ||
If '''Application based on rank''' is enabled, not every pilot can freely join every airline tier. | If '''Application based on rank''' is enabled, not every pilot can freely join every airline tier. | ||
<div style="margin:0.6em 0; padding:0.8em 1em; background:#eef3fb; border-left:6px solid #1f4fa3; border-radius:8px;"> | |||
<pre> | |||
Current hiring chances: | Current hiring chances: | ||
Cadet | |||
- Tier 1 = 100% | |||
Second Officer | |||
- Tier 1 = 100% | |||
- Tier 2 = 50% | |||
First Officer | |||
- Tier 1 = 100% | |||
- Tier 2 = 100% | |||
- Tier 3 = 50% | |||
Captain | |||
- Tier 1 = 100% | |||
- Tier 2 = 100% | |||
- Tier 3 = 75% | |||
Senior Captain | |||
- Tier 1 = 100% | |||
- Tier 2 = 100% | |||
- Tier 3 = 95% | |||
</pre> | |||
</div> | |||
<div style="margin:0.6em 0; padding:0.6em 0.8em; background:#fdf7f2; border-left:4px solid #f0ad4e;"> | |||
If you are rejected by the same company, FSFO enforces a 7-day wait before trying again. | If you are rejected by the same company, FSFO enforces a 7-day wait before trying again. | ||
</div> | |||
[[FSFO Career Mode User Guide#top|Back to top]] | |||
---- | ---- | ||
| Line 202: | Line 279: | ||
Two training paths are available: | Two training paths are available: | ||
* '''Private Training''' | * '''Private Training''' | ||
* '''Company Training''' | Costs money immediately | ||
* '''Company Training''' | |||
Extends contract legs instead of charging the balance directly | |||
Training duration and costs depend on the type rating group. | Training duration and costs depend on the type rating group. | ||
[[FSFO Career Mode User Guide#top|Back to top]] | |||
---- | ---- | ||
| Line 222: | Line 302: | ||
If '''Schedule based on rank''' is enabled, FSFO automatically applies a maximum leg distance by rank: | If '''Schedule based on rank''' is enabled, FSFO automatically applies a maximum leg distance by rank: | ||
<div style="margin:0.6em 0; padding:0.8em 1em; background:#eef3fb; border-left:6px solid #1f4fa3; border-radius:8px;"> | |||
<pre> | |||
Rank 1 = 350 NM | |||
Rank 2 = 650 NM | |||
Rank 3 = 1100 NM | |||
Rank 4 = 1800 NM | |||
Rank 5 = 3000 NM | |||
</pre> | |||
</div> | |||
FSFO first tries to build a schedule using that cap. If it cannot build a full schedule, it falls back to the full eligible route pool. | FSFO first tries to build a schedule using that cap. If it cannot build a full schedule, it falls back to the full eligible route pool. | ||
| Line 234: | Line 318: | ||
If '''Lock schedule until complete''' is enabled, FSFO will not generate a new schedule while an incomplete schedule already exists. | If '''Lock schedule until complete''' is enabled, FSFO will not generate a new schedule while an incomplete schedule already exists. | ||
[[FSFO Career Mode User Guide#top|Back to top]] | |||
---- | ---- | ||
| Line 251: | Line 335: | ||
FSFO then divides scored routes into a preferred top bucket and a lower bucket. | FSFO then divides scored routes into a preferred top bucket and a lower bucket. | ||
<div style="margin:0.6em 0; padding:0.8em 1em; background:#eef3fb; border-left:6px solid #1f4fa3; border-radius:8px;"> | |||
<pre> | |||
Current rank-based bid chances: | |||
Rank 1 = 10% | |||
Rank 2 = 35% | |||
Rank 3 = 60% | |||
Rank 4 = 90% | |||
Rank 5 = 95% | |||
</pre> | |||
</div> | |||
If the bidding roll succeeds, FSFO selects from the top 30% of scored routes. Otherwise, it selects from the lower portion of the list. | If the bidding roll succeeds, FSFO selects from the top 30% of scored routes. Otherwise, it selects from the lower portion of the list. | ||
[[FSFO Career Mode User Guide#top|Back to top]] | |||
---- | ---- | ||
| Line 269: | Line 357: | ||
You can set a preferred airport for a company. FSFO uses that airport when generating schedules and gives preference to routes that end there, especially near the end of a generated trip. | You can set a preferred airport for a company. FSFO uses that airport when generating schedules and gives preference to routes that end there, especially near the end of a generated trip. | ||
[[FSFO Career Mode User Guide#top|Back to top]] | |||
---- | ---- | ||
| Line 277: | Line 365: | ||
After a schedule is generated, FSFO can build a route map from the loaded schedule legs and open it externally. | After a schedule is generated, FSFO can build a route map from the loaded schedule legs and open it externally. | ||
[[FSFO Career Mode User Guide#top|Back to top]] | |||
---- | ---- | ||
| Line 285: | Line 373: | ||
A flight does not automatically count toward career progression. | A flight does not automatically count toward career progression. | ||
If | <div style="margin:0.6em 0; padding:0.6em 0.8em; background:#fdf7f2; border-left:4px solid #f0ad4e;"> | ||
If <strong>Must fly scheduled flight</strong> is enabled, the flight must complete the <strong>next pending leg in order</strong>. | |||
</div> | |||
FSFO compares: | |||
* the actual flight number | * the actual flight number | ||
| Line 306: | Line 398: | ||
* it will not trigger promotion | * it will not trigger promotion | ||
If the next scheduled leg is completed correctly, it is marked | <div style="margin:0.6em 0; padding:0.8em 1em; background:#f4f9f6; border-left:6px solid #5cb85c;"> | ||
If the next scheduled leg is completed correctly, it is marked <strong>COMPLETED</strong>. If that was the final remaining leg, the schedule is cleared. | |||
</div> | |||
[[FSFO Career Mode User Guide#top|Back to top]] | |||
---- | ---- | ||
| Line 337: | Line 431: | ||
These events affect the total score and increment the appropriate error counters. | These events affect the total score and increment the appropriate error counters. | ||
[[FSFO Career Mode User Guide#top|Back to top]] | |||
---- | ---- | ||
| Line 349: | Line 443: | ||
* distance from the runway threshold | * distance from the runway threshold | ||
<div style="margin:0.6em 0; padding:0.8em 1em; background:#eef3fb; border-left:6px solid #1f4fa3; border-radius:8px;"> | |||
<pre> | |||
When runway data is available, the current weighting is: | When runway data is available, the current weighting is: | ||
Vertical speed = 40% | |||
G-force = 30% | |||
Touchdown distance = 30% | |||
</pre> | |||
</div> | |||
If runway threshold data is unavailable, the distance portion is redistributed proportionally between vertical speed and G-force. | If runway threshold data is unavailable, the distance portion is redistributed proportionally between vertical speed and G-force. | ||
[[FSFO Career Mode User Guide#top|Back to top]] | |||
---- | ---- | ||
| Line 370: | Line 468: | ||
A flight is currently marked '''Qualified for Progression''' when the total score meets the system's qualification rule. The flight log stores that qualification result along with pay, fines, and error counts. | A flight is currently marked '''Qualified for Progression''' when the total score meets the system's qualification rule. The flight log stores that qualification result along with pay, fines, and error counts. | ||
[[FSFO Career Mode User Guide#top|Back to top]] | |||
---- | ---- | ||
| Line 387: | Line 485: | ||
* '''Last 7 days''' | * '''Last 7 days''' | ||
<div style="margin:0.6em 0; padding:0.8em 1em; background:#eef3fb; border-left:6px solid #1f4fa3; border-radius:8px;"> | |||
<pre> | |||
Current formula: | |||
Acute Load = max(legs in last 24h / 4, block hours in last 24h / 8) | |||
Short Load = max(legs in last 72h / 8, block hours in last 72h / 18) | |||
Weekly Load = max(legs in last 7d / 16, block hours in last 7d / 35) | |||
</pre> | |||
</div> | |||
Each load is clamped from 0 to 1. | Each load is clamped from 0 to 1. | ||
<div style="margin:0.6em 0; padding:0.8em 1em; background:#f4f9f6; border-left:6px solid #5cb85c; border-radius:8px;"> | |||
<pre> | |||
Final fatigue: | Final fatigue: | ||
Fatigue = (Acute Load × 50) + (Short Load × 30) + (Weekly Load × 20) | |||
</pre> | |||
</div> | |||
The result is capped at 100 and rounded to the nearest whole percent. | The result is capped at 100 and rounded to the nearest whole percent. | ||
| Line 403: | Line 509: | ||
If fatigue is above the allowed limit, Career Mode readiness should fail until workload decreases. | If fatigue is above the allowed limit, Career Mode readiness should fail until workload decreases. | ||
[[FSFO Career Mode User Guide#top|Back to top]] | |||
---- | ---- | ||
| Line 432: | Line 538: | ||
Use the Flight Log window to review your performance over time. | Use the Flight Log window to review your performance over time. | ||
[[FSFO Career Mode User Guide#top|Back to top]] | |||
---- | ---- | ||
== Notes == | == Notes == | ||
<div style="margin:0.6em 0; padding:0.8em 1em; background:#eef3fb; border-left:6px solid #1f4fa3;"> | |||
Quick reference notes for current Career Mode behavior. | |||
</div> | |||
* Career Mode currently supports one local pilot profile | * Career Mode currently supports one local pilot profile | ||
| Line 443: | Line 553: | ||
* The current '''Show Contract''' button is not implemented yet | * The current '''Show Contract''' button is not implemented yet | ||
[[FSFO Career Mode User Guide#top|Back to top]] | |||
---- | ---- | ||
| Line 450: | Line 560: | ||
=== "PilotProfile was not found" === | === "PilotProfile was not found" === | ||
<div style="margin:0.4em 0; padding:0.6em 0.8em; background:#fdf7f2; border-left:4px solid #f0ad4e;"> | |||
Create or rebuild the database, then apply to a company. | Create or rebuild the database, then apply to a company. | ||
</div> | |||
=== No schedule was generated === | === No schedule was generated === | ||
Check that: | Check that: | ||
| Line 462: | Line 576: | ||
=== My flight did not count toward progression === | === My flight did not count toward progression === | ||
If '''Must fly scheduled flight''' is enabled, verify that: | If '''Must fly scheduled flight''' is enabled, verify that: | ||
| Line 470: | Line 585: | ||
=== I cannot generate a new schedule === | === I cannot generate a new schedule === | ||
If '''Lock schedule until complete''' is enabled, finish the current schedule first or turn that option off. | If '''Lock schedule until complete''' is enabled, finish the current schedule first or turn that option off. | ||
---- | |||
<div style="margin:1em 0; padding:0.8em 1em; background:#eef3fb; border-left:6px solid #1f4fa3;"> | |||
For additional setup help, see [[Getting Started]]. For general problem solving, see [[Troubleshooting]]. | |||
</div> | |||
[[Category:User Guide]] | [[Category:User Guide]] | ||
[[Category:Career Mode]] | [[Category:Career Mode]] | ||
Revision as of 12:18, 26 March 2026
FSFO Career Mode User Guide
This page explains how Career Mode works in FSFO, including pilot progression, schedules, training, scoring, fatigue, and the permanent flight log.
Career Mode uses a local database to track your pilot profile, your active schedule, and your long-term flight history.
Overview
Career Mode is built around three main areas:
- Pilot Profile
Your pilot's name, company, rank, tier, balance, location, type ratings, score, errors, contract legs, and training status
- Current Schedule
Your active scheduled legs
- Flight Log
Your permanent flight history and performance record
Use Career Mode if you want persistent progression across multiple flights instead of isolated one-off sessions.
Getting Started
To begin using Career Mode:
- Open the Career Dashboard
- Click Rebuild Database the first time you use Career Mode
- Enter your pilot name
- Select a company
- Optionally select a type rating
- Click Apply Company
Once accepted, your pilot profile is created and Career Mode begins tracking your progress.
Career Dashboard
The Career Dashboard includes the following major functions:
- Rebuild Database
Creates or recreates the local career database
- Apply Company
Applies for a company and creates your pilot profile if needed
- Apply Type Rating
Starts type-rating training
- Generate Schedule
Builds your current schedule
- Load Stats
Refreshes pilot statistics
- Save Options
Saves career settings
- Flight Log
Opens the permanent flight history window
NOTE: The current Show Contract button is not implemented yet.
Career Options
These options affect how schedules are generated, when flights count toward progression, and whether readiness checks can block a flight.
- Start from last airport
Requires you to begin your next career flight from your saved current location. If enabled, FSFO checks that you are within 10 NM of the pilot's stored airport before the flight is considered ready.
- Fatal crash starts over
If enabled, a fatal crash can end your current career and force you to start over.
- Must fly scheduled flight
Only credits career progress when you complete the next pending scheduled leg in order. If enabled and you do not fly the correct leg, the flight can still be logged, but it will not advance total legs, average score, balance, rank, or career tier.
- Passenger comfort
Enables passenger-comfort rules so smoother, better-managed flights matter more to your career results.
- Can be fired
Enables the career rule that allows poor performance or major failures to put your employment at risk.
- Enable fatigue
Turns on fatigue tracking. If enabled, FSFO checks recent workload and can block career-flight readiness when fatigue rises above the allowed threshold.
- Schedule based on rank
Automatically builds schedules using the pilot's current rank and tier to determine the maximum leg distance. If a full schedule cannot be built within that cap, FSFO falls back to the full eligible route set.
- Must have type rating
Requires the pilot to hold the appropriate type rating before operating aircraft that need one.
- Lock schedule until complete
Prevents generating a new schedule while an existing schedule still has incomplete legs.
- Application based on rank
Makes company applications depend on your current rank, including tier eligibility and hiring probability. It also enforces the rejection cooldown for repeat applications.
Companies and Company Tiers
Companies are loaded from Airlines.cfg. Each airline has a tier. That tier affects hiring rules, contract leg requirements, and pay scaling.
Current contract-leg requirements by company tier: Tier 1 = 30 legs Tier 2 = 60 legs Tier 3 = 90 legs Tier 4 = 120 legs Tier 5 = 150 legs
If you leave a company before satisfying the required legs, Career Mode can apply a contract-break penalty.
Ranks
Career Mode uses a five-rank system:
- Rank 1 - Cadet
- Rank 2 - Second Officer
- Rank 3 - First Officer
- Rank 4 - Captain
- Rank 5 - Senior Captain
Your rank affects:
- the maximum leg distance used in automatic scheduling
- your bidding advantage when schedules are generated
- which companies you can apply to if rank-based hiring is enabled
- your promotion eligibility
- your pay multiplier through Career Tier
How Promotions Work
Promotions are based on two things:
- Total Legs
- Average Score
Requirement: Your Average Score must be at least 92.0 before any promotion is possible.
Promotion thresholds: 50 total legs = Second Officer 125 total legs = First Officer 200 total legs = Captain 350 total legs = Senior Captain
If your flight is not credited toward progression, it will not count toward promotion.
Career Tier and Pay
Career Tier increases with promotion. Pay is recalculated using a tier multiplier.
Current pay multipliers: Tier 1 = 1.00x Tier 2 = 1.04x Tier 3 = 1.08x Tier 4 = 1.12x Tier 5 = 1.16x
When you are promoted, FSFO updates:
- your rank
- your career tier
- your pay per hour
Company Applications
If Application based on rank is enabled, not every pilot can freely join every airline tier.
Current hiring chances: Cadet - Tier 1 = 100% Second Officer - Tier 1 = 100% - Tier 2 = 50% First Officer - Tier 1 = 100% - Tier 2 = 100% - Tier 3 = 50% Captain - Tier 1 = 100% - Tier 2 = 100% - Tier 3 = 75% Senior Captain - Tier 1 = 100% - Tier 2 = 100% - Tier 3 = 95%
If you are rejected by the same company, FSFO enforces a 7-day wait before trying again.
Type Ratings and Training
Use Apply Type Rating after you have joined a company.
Type rating requests will be blocked if:
- no pilot profile exists
- the pilot is not currently employed by a company
- the pilot is already in training
- the pilot already holds that type rating
Two training paths are available:
- Private Training
Costs money immediately
- Company Training
Extends contract legs instead of charging the balance directly
Training duration and costs depend on the type rating group.
Schedule Generation
Schedules are built from your route data and filtered by:
- current airline
- rank
- type rating, if type-rating enforcement is enabled
- current location and preferred airport logic
If Schedule based on rank is enabled, FSFO automatically applies a maximum leg distance by rank:
Rank 1 = 350 NM Rank 2 = 650 NM Rank 3 = 1100 NM Rank 4 = 1800 NM Rank 5 = 3000 NM
FSFO first tries to build a schedule using that cap. If it cannot build a full schedule, it falls back to the full eligible route pool.
If Schedule based on rank is disabled, the Max NM value entered by the user is enforced strictly.
If Lock schedule until complete is enabled, FSFO will not generate a new schedule while an incomplete schedule already exists.
Schedule Bidding System
When rank-based scheduling is enabled, FSFO scores route candidates and applies a bidding system.
Route scoring currently considers:
- base block-time value
- penalties for very short flights
- rank-based length bias
- preferred-airport bonuses
FSFO then divides scored routes into a preferred top bucket and a lower bucket.
Current rank-based bid chances: Rank 1 = 10% Rank 2 = 35% Rank 3 = 60% Rank 4 = 90% Rank 5 = 95%
If the bidding roll succeeds, FSFO selects from the top 30% of scored routes. Otherwise, it selects from the lower portion of the list.
Preferred Airport
You can set a preferred airport for a company. FSFO uses that airport when generating schedules and gives preference to routes that end there, especially near the end of a generated trip.
Route Map
After a schedule is generated, FSFO can build a route map from the loaded schedule legs and open it externally.
When a Flight Counts Toward Progression
A flight does not automatically count toward career progression.
If Must fly scheduled flight is enabled, the flight must complete the next pending leg in order.
FSFO compares:
- the actual flight number
- the actual departure airport
- the actual arrival airport
For the leg to count, the pilot must:
- start at the correct airport
- arrive at the correct airport
- match the next pending scheduled leg
If the flight does not meet that requirement:
- it can still be logged
- it will not increase Total Legs
- it will not update Average Score
- it will not reduce Contract Remaining Legs
- it will not update Balance
- it will not trigger promotion
If the next scheduled leg is completed correctly, it is marked COMPLETED. If that was the final remaining leg, the schedule is cleared.
Flying a Career Flight
Before flight, FSFO captures:
- company
- flight number
- aircraft
- departure airport
- arrival airport
During flight, Career Mode monitors multiple operational and scoring categories.
Examples include:
- pitch exceedance
- bank exceedance
- G-force exceedance
- IAS exceedance
- taxi-speed exceedance
- light misuse
- fuel-management failures
- landing-performance issues
These events affect the total score and increment the appropriate error counters.
Landing Score
Landing Score is based on:
- vertical speed
- G-force
- distance from the runway threshold
When runway data is available, the current weighting is: Vertical speed = 40% G-force = 30% Touchdown distance = 30%
If runway threshold data is unavailable, the distance portion is redistributed proportionally between vertical speed and G-force.
Total Score and Qualification
Career Mode stores both:
- Landing Score
- Total Score
A flight is currently marked Qualified for Progression when the total score meets the system's qualification rule. The flight log stores that qualification result along with pay, fines, and error counts.
Fatigue
If Enable fatigue is turned on, FSFO calculates fatigue from your recent workload using both:
- number of legs
- block hours
It evaluates three rolling workload windows:
- Last 24 hours
- Last 72 hours
- Last 7 days
Current formula: Acute Load = max(legs in last 24h / 4, block hours in last 24h / 8) Short Load = max(legs in last 72h / 8, block hours in last 72h / 18) Weekly Load = max(legs in last 7d / 16, block hours in last 7d / 35)
Each load is clamped from 0 to 1.
Final fatigue: Fatigue = (Acute Load × 50) + (Short Load × 30) + (Weekly Load × 20)
The result is capped at 100 and rounded to the nearest whole percent.
If fatigue is above the allowed limit, Career Mode readiness should fail until workload decreases.
Flight Log
The Flight Log is the permanent history of your career flights.
Each flight log entry stores:
- date
- company
- flight number
- aircraft
- from airport
- to airport
- block time
- landing score
- total score
- landing rate
- landing G
- block fuel
- critical/configuration/lights/speed error counts
- qualification result
- pay earned
- fines paid
Use the Flight Log window to review your performance over time.
Notes
Quick reference notes for current Career Mode behavior.
- Career Mode currently supports one local pilot profile
- The current schedule stores only the active trip
- The flight log is the permanent historical record
- The current Show Contract button is not implemented yet
Troubleshooting
"PilotProfile was not found"
Create or rebuild the database, then apply to a company.
No schedule was generated
Check that:
- routes.csv exists
- the file format is valid
- routes match the current airline
- type-rating rules are not filtering everything out
- the requested leg count is realistic for the route pool
My flight did not count toward progression
If Must fly scheduled flight is enabled, verify that:
- you flew the next pending leg in order
- you started at the scheduled departure airport
- you arrived at the scheduled arrival airport
- the flight number matched when required
I cannot generate a new schedule
If Lock schedule until complete is enabled, finish the current schedule first or turn that option off.
For additional setup help, see Getting Started. For general problem solving, see Troubleshooting.
