An idea for balancing Medikits without deviating too much from the current system:
Keep track of two health values, one for in-mission, one for after-mission. When a soldier gets hurt, both go down. When a medikit is used, it has its current effect on in-mission health, but only, say, half as much for after-mission health. When the soldier gets back to base, he's treated as though he has the after-mission health (with a minimum of 1, if he survived the mission but wound up with 0 or less after-mission hp remaining).
As an example to illustrate what i mean:
1) Shooty McSoldier goes into a mission with 100 health.
2) At one point in that mission, he takes a Plasma blast for 60 damage. Both in-mission and after-mission scores are reduced to (100-60=) 40.
3) A buddy uses a Medikit on Shooty McSoldier, restoring 50 health. The game shows him as being at (40+50=) 90 health for the purpose of the mission, but records him as being at only (40+25=) 65 for after-mission.
4) Shooty McSoldier finishes the mission without further healing or injury.
5) When he gets back to base, Shooty McSoldier is treated for the purpose of healing and future mission hp as though he were wounded down to 65, requiring 35 damage worth of hospital time to come back to his full 100.
The in-mission vs. after-mission health could be demonstrated on the interface in a number of ways. The after-mission health could just be hidden (AFAIK requiring no actual change to the interface). Another way would be to have the after-mission health in one color, with the rest of the in-mission health in a slightly different color: e.g. in the example above, Shooty McSoldier's hp bar could be red in the 1-65 part of the block and red-orange in the 66-90 part.
The fraction healed could also easily be changed from 1/2, since I mostly just used that for an example. The medikit could very well do
nothing to after-mission health, for example.
A good thing to add to this would be to not allow a medikit to heal a soldier beyond what he started the mission with. So if Shooty McSoldier goes on a mission immediately, he'd be shown has having 65 health (both in-mission and after-mission), but the medikit would do nothing if used right away. If he gets shot
again, a medikit would not bring his in-mission health above 65. In other words, that 35 damage remaining from his first mission could only be healed in the Hospital.
Just a thought. I love the game, and think the developers are doing a great job, so I'm just trying to help a little bit when I see something that could use a little tweaking
Edit: Geez, now I find a similar suggestion in another forum. I look for an hour, and only find it after I've made the post