One of the frustrations in a space-based 4X game is lack of "borders" and the inability to control those borders. This goes all the way back to the MOO2 (Master of Orion II) days where towards the end of the game, no home world was safe at all and you had to constantly move a home fleet around from world to world whenever you detected an inbound invasion fleet. There was no way to interdict, slow-down, capture, force engagement on those fleets except by being at the spot where they landed.
There are a few problems within the current GC3 ship module game mechanics:
1) Some modules like +range and +sensor are very inexpensive, leading to the ease of abuse by stacking half a dozen or more on a hull.
2) Some modules should scale in cost based on the hull size. Specifically +range and +speed, and maybe +defense.
3) The effect of stacking is linear, making them difficult to balance.
There are a few traditional solutions to this:
A ) Nerf the power of a particular module, or make it a lot more expensive
B ) Outlaw stacking of certain module types. Or only allow stacking up to some limit. Things still stack linearly up to that point. Or force certain types of modules to fit into slots, then limit the number of slots on a particular hull type.
C ) Introduce a second and third limiting variable into the mix, which certain modules make use of. For example, instead of hulls just having "capacity/structure" points where you treat the ship like a bag that you fill with goodies, some goodies also consume "power" points (in addition to capacity points), while other modules consume "complexity" points.
So if you have a ship with 100 power, 100 complexity and 100 structure -- then a "drive" is generally a large structure, consumes a lot of power, but has a low complexity. A weapon system, OTOH, probably moderate consumes power but with higher complexity points, while life support mostly consumes lots of structure with low power/complexity needs.
D ) Use "diminishing returns" on certain module types. The first module (sorted in descending power) gets you full power, the second module works at a reduced fraction, etc. This has always been my favorite system because it's easy to apply and developers can adjust the calculation to achieve various soft-caps on stacking.
A severe version of module stacking would be to use a factor of 0.5, which means that every additional module is half as powerful as the one before it. So instead of 10+10+10+10+10 = 50 points of power, it calculates out as 10 + 5 + 2.5 + 1.25 + 0.625 = 19.375 points. Now there's no point in stacking more then 2-3 of a particular module, unless you have lots of capacity to spare. So instead of a ship range of 50, most ships will run with a ship range of 17.5 (3 stacks) until the empire researches the next tier which gives 15 points per module. Some examples of the 0.5 factor for stacking (3) modules and (6) modules.
Module Power=10 - 17.50 (3) vs 19.69 (6)
Module Power=15 - 28.13 (3) vs 29.53 (6)
Module Power=20 - 35.00 (3) vs 39.38 (6)
Sample spreadsheet:
https://docs.google.com/spreadsheets/d/1crbfax7uEnsoHQZrStIrPmpu3ZcBnlK9ZuoryCAJn7g/edit?usp=sharing
A factor of 0.5 puts the upper limit that a ship can receive from a particular module tech (i.e. range 9 life support) at two times the base value. If you want to allow stacking up to three times the base value for some module type then use a factor of 0.67; to allow a maximum of four times the base value use a factor of 0.75.
Suggested factors for various modules:
+range - factor=0.62, so that a stack of (3) gives a 2.00x boost, but that fourth module only gets you to 2.24x.
+speed - factor=0.825, a stack of (3) gives 2.51x, stacking (4) gives you 3.07x and stacking (6) gets you 3.91x base speed.
+sensor - factor=0.75, stacking seven only gives you 3.47 times the base strength instead of 7.00x.
+defense - factor=0.9, stackable up until about depth 10, but you only get 6.51x instead of 10x the base strength
These factors should be placed in the XML files for tweaking. Players who don't like the change at all can change the factors back to 1.00 in the XML.
The primary benefits are:
- Engine tech becomes slightly more important. If you want to go faster, then you need a higher base module speed from technology improvements rather then just stacking two or five more of a lower tech engine on the hull.
- Life support tech become much more important as you can only stack 3-4 on a single hull before it gets cost-prohibitive.
- Sensor power and fog-of-war gets a slight nerf.
- Stacking defense modules gets a slight nerf.
- Gives another dial (factor) that can be used for game balance, or racial traits. One race might be better at a particular module type stacking then another race. Race X might be able to shave 25% off the stacking penalty so that instead of a factor of 0.6, they get a factor of 0.7 for that module type.