Hey everyone,
I wanted to share some progress on one of the biggest systems I’ve been working on for Virtual Medical Dispatch (VMD): the roster generation system.
At first, I thought crew scheduling would be relatively straightforward just assign available pilots and medical staff to missions and call it a day.
I was very wrong.
The deeper I went into how real medevac and air ambulance operators work, the more I realized roster planning is basically the heart of the entire operation. If the wrong crew is scheduled, the mission simply doesn’t happen.
And for a simulation that aims to feel realistic, I didn’t want the system to just “spawn crew” magically.
I wanted it to feel alive.
More Than Just Pilots
One thing I quickly learned is that medical aviation isn’t only about aircraft.
Sure, you need pilots.
But depending on the mission, you may also need:
- Flight nurses
- ICU doctors
- Paramedics
- ECMO specialists
- Dispatch coordinators
- Ground transport staff
A simple patient transfer might need:
- 2 pilots
- 1 nurse
But a critical long-range ICU transfer could need:
- 2 pilots
- 1 relief pilot
- 1 ICU doctor
- 2 flight nurses
- Specialized equipment team
That changes everything for scheduling.
Not Every Crew Can Do Every Mission
This became one of the most interesting parts to build.
In most flight sims, crew are generic.
In VMD, every crew member has qualifications.
For pilots:
- Aircraft type rating
- IFR certification
- Night operation clearance
- Special airport training
For medical staff:
- Trauma certification
- Neonatal care
- ICU experience
- ECMO certification
For example, if you’re flying an ECMO mission using a long-range jet like a Bombardier Global 6000, you can’t just assign whoever is free.
The system checks whether that exact crew is qualified.
That immediately made dispatch feel much more real.
Fatigue Became a Huge Deal
This is where things got fun (and painful to code).
I didn’t want to stop at “legal duty time.”
In real life, someone can technically still be legal to fly while being completely exhausted.
So I built a fatigue model.
The system looks at things like:
- Night shifts
- Consecutive missions
- Sleep disruption
- Long duty periods
- Time zone changes
Every crew member now has a fatigue score.
That means the dispatcher might see:
Captain available? Yes.
Safe to launch? Maybe not.
That small detail changed the whole feel of the sim.
Now decisions become much more human.
Do you launch immediately with a tired crew?
Or wait 45 minutes for a fresh team?
That’s exactly the type of pressure I want players to feel.
Home Base Matters Too
Another thing I added is crew positioning.
Crew aren’t teleporting around the map.
Each person has a home base.
Examples:
- Nice
- London
- Dubai
So if a mission comes in from another region, the system asks:
- Is the crew already nearby?
- Do they need repositioning?
- Will that delay launch?
- Is hotel accommodation needed?
That adds a whole operational layer I really love.
The Hardest Part: Conflicts
This is where the sim starts feeling like controlled chaos.
Imagine this scenario:
You have one crew available.
Then suddenly:
- Organ transport request comes in
- ICU transfer comes in
- One pilot reports sick
- Weather worsens
What now?
The roster engine has to prioritize.
Current priority order is roughly:
- Critical life-threatening missions
- Organ transport
- Scheduled transfers
- VIP medical charters
That means the sim constantly forces tradeoffs.
And honestly, those moments are becoming some of my favorite parts.
Making It Feel Alive
The biggest design goal for me is simple:
I don’t want Virtual Medical Dispatch to feel like menus and spreadsheets.
I want it to feel like sitting inside a real operations control center at 3 AM while alarms go off and dispatch phones won’t stop ringing.
You’re not just managing aircraft.
You’re balancing:
- Human fatigue
- Medical urgency
- Regulations
- Costs
- Aircraft availability
- Time pressure
That’s what makes medical aviation fascinating to me.
It’s messy, stressful, and incredibly dynamic.
What’s Next?
I’m currently connecting roster generation with:
- Mission generation
- Finance system
- Aircraft maintenance
- Live dispatch board
- ACARS messaging
Once all of that is integrated, crew planning won’t just affect operations — it’ll directly impact profitability and response capability.
That’s where things get really exciting.
More soon 👀
Wondering when did this project started?
First build is from summer 2025


