[1.190] Suggestion for Projector block PCU to only apply to unbuilt
Projector blocks can cause a lot of lag on servers, so I understand why they consume more PCU now, based on the projected grid.
However this does complicate repairs. If you want to use a projector to repair your ship, now you require 2x the PCU for that ship, even if you just wanted to repair a dozen or so blocks.
I have a suggestion that might help both sides:
Only consume PCU for blocks that are actually projected.
- Player selects blueprint from projector, this gets sent to the server.
- Server loads blueprint, compares it to current grid, and removes any blocks that are already built.
- PCU is added based on the blocks requiring projection.
- Sync to clients if below limit, or report error to client otherwise.
- Alternatively, perform that first check on the client first, to avoid the initial sync, then validate again on the server (to avoid client exploits).
Alternatively, if the projector is set to "show buildable only" then only include those in the PCU.
It is more work internally, I understand that. However the projectors are very valuable to survival players, and when you have a limited PCU server, it hurts if you can't repair your ship with it.
EDIT: Another solution would be to use a fixed 1 PCU value for each projected block, since their gamelogic shouldn't be running anyway, it shouldn't use extra PCU.
Or a percentage of the total. Something to help, while not making it impossible to repair larger ships.