What you're asking for is possible isasmuch as you can create a skill that'll give the flagship of whoever's using it more ordnance points. It is not possible to limit it to the player, so you'll be prone to running into AI ships that have as much ordnance as your ship does. You can manage it fairly simply. I'm going to run through modifying an existing skill because it's easier all around, but you can delve deeper if you want.
Go into starsector-core and open starsector.api.zip, go down the path until you're in starfarer.api.zip\com\fs\starfarer\api\impl\campaign\skills\
Open up ship design - one of those skills involves changing ship ordnance points. Also, you now know where to find script implementations of everything in Starsector so there's that. Now, go into starsector-core\data\characters\skills (not in the zip file). Add a new folder named scripts.
Pick out the skill you think this'll fit in. Now, without some shenanigans you'd need to compile a new .jar to make this work, but we can slot it in pretty easily thanks to Starsector's previous implementation of skill scripting. You'll want to add
{"type":"SHIP", "script":"data.characters.skills.scripts.flagshipordnance"},
to the line of whichever level you want the flagship skill to take effect in.
Go into the scripts folder. Make a new file called flagshipordnance.java
package data.characters.skills.scripts;
import com.fs.starfarer.api.characters.CharacterStatsSkillEffect;
import com.fs.starfarer.api.characters.MutableCharacterStatsAPI;
public class flagshipordnance implements FleetStatsSkillEffect {
public void apply(MutableCharacterStatsAPI stats, String id, float level) {
stats.getShipOrdnancePointBonus().modifyFlat(id, [YOUR NUMBER]f);
}
public void unapply(MutableCharacterStatsAPI stats, String id) {
stats.getShipOrdnancePointBonus().unmodify(id);
}
public String getEffectDescription(float level) {
return "Increases flagship ordnance points by [YOUR NUMBER]";
}
public String getEffectPerLevelDescription() {
return null;
}
public ScopeDescription getScopeDescription() {
return ScopeDescription.SHIP;
}
}
That should do the trick. You can apply most of this to modifying current skills, though creating new ones outright is a bit more involved. The usual caveats about untested code apply. I may have made a typo somewhere but if you're familiar with programming syntax errors should be readily fixable - just open up starsector.log in the starsector-core folder and unfuck whatever I messed up.
Ordinarily the ordnance point bonus is along the lines of
stats.getShipOrdnancePointBonus().modifyPercent(id, OP_BONUS);
So if modifyFlat doesn't work copy the old line in and change the bonus to 100f. Or something along those lines. You'll probably want to do some testing.