Pardon me for butting in- I was looking over the numbers for your calculations of the repairing of the ships hulls:
1) At 1/10,000 repair rate of the Current Shield Strength- a 10,000 J Max Shield would Start to repair at a rate of 1 Hull Point/ Sec., so 1,000 hull points in about 1,000 seconds or in about 16 min and 40 seconds.
1A) However at that same time, if the shields are depleting at a rate of 1%/sec, then the shields would be fully depleted in 100 sec. Your 25% cut-off of the shields means that the command would automatically shut off at 75 sec of operation.
1B) This now means that during that 75 sec time frame, let's just say, to keep the numbers simple, that the rate of repair actually stays the same as the Maximum Shield Strength, only 75 points of hull will be repaired before the 25% shield cut-off is reached.
This therefore now means that the shields would need to recharge B4 continuing the Hull Repair a total of 13 times B4 the whole 1,000 Hull Points are repaired.
If the Software/Ware actually has the Rate of Repair Decreasing with the current level of the shields, then the actual Rate of repair will decrease over time as the shields are drained, thus slowing the Rate of Repair as time goes on. Meaning that actually the Hull Points repaired will be less than they would if the calculations are based on the Max Shields that the ship currently has on board.
Here is an alternative option to make the rate be actually balanced and be useful for all ships:
Have the Hull Repair Rate as a constant based on the Actual Max Shield Strength of the Ship in question (E.g. Argon Buster with 10,000 J Shields), and the repair rate is actually 1 Hull Point for every 1,000 J Shield Strength. This means that the Ship repairs at a rate of 10 Hull Points/Sec. Then, with the Shield Depletion Rate at 1%/Sec, means that the same 75 seconds would yield a total of 750 Hull Points repaired, meaning that the Shields will only need to be recharged Once B4 the hull is totally repaired.
The only stumbling block I see, is that when your ship becomes more than 50% Damaged, the Nanobots have to spread out and cover much more area of the ship in order to repair the ship. Meaning that it will take longer to repair or make repairs than at a Shipyard more.
The smaller the repair, the Faster the Nanobots can repair because there are more Nanobots per area to repair.
I would suggest that:
1) the Rate of repair be in an inverse proportion to the % of Damage the Ship needs repaired.
2) The Standard Rate of Repair be stated for a 50% level of repair when Activated.
3) Hence (E.g., 50% Damage--> 1 Hull Point/Sec/1,000 J Max. Shield Strength(S.S.); at 25% Damage--> 2 Hull Points/Sec/ 1,000 J Max. S.S.; at 75% Damage--> 0.5 Hull Points/Sec/1,000 J Max S.S.)
As the Hull is repaired, the Rate of Repair increases.
The Game already calculates the % of Damage (Variable), The Max Shields (a Constant in the equation) are based on the Actual Shields on the ship.
The Rate of Depletion of the Shields will remain Constant, so the shields will always Shut-off after 75 Seconds of operation and automatically start to recharge to protect the newly repaired Hull, after which the Nanobots can be reactivated to finish the repair.
There could be 4 versions (S,M,L,XL) of the Nanobot repair Ware/Software, so that different Ships can have the Standard Repair Rates Listed above.
If a Ship that can carry M class cargo uses the S version, the Repair Rate will be 50% of the Standard Rate listed above.
If a Ship can carry L class cargo uses the S version the Repair Rate will be 33% of the Standard Rate. If the same Ship has the M version, then the rate will be 67% the Standard Rate.
If a Ship that can carry an XL version, uses the S version --> 25% Standard Rate. If it carries the M version 50% the Standard Rate. The L version 75% the Standard Rate.
The Shield Depletion Rate would be at the Rate dictated by the Size of the Ship, the Size of the Software/Ware and the Max Shields themselves.
Ideally, the Ships should carry the same size Ware/Software that they can carry for Maximum Efficiency.
The Formula should work like this:
((2 X (Max Hull Pts - Actual Hull Pts)/ Max Hull Pts) X (Actual Max Shields/1,000) X (Carried Software Size/Max Cargo Size)) X 15
Add the resulting number to the Actual Hull Pts B4 the equation and repeat the cycle until either the shields get to 25% or the Actual Hull Pts = the Max Hull Pts.
If the shields are at 25% and shut off the repair- send a message to notify that the ship is "recharging the shields. Check to resume repairs."
Have this Formula cycle every 15 seconds as the shield depletion will be calculated properly to 75 seconds.
I am not a scripter, not familiar with the programming code, but I have a head for calculations. I hope this helps.. Thanks for your hard work and Happy Holidays