They're also off topic...
In the brainstorming section, off topic. ah ha ha ha ha ha ha
Off topic isn't necessarily bad, particularly in brainstorming...
he just deleted all his posts.
Indeed. Well, I suppose it's his right to do so, though it seems either inconsiderate or an overraction...
You do agree that calculating nodes based on a connection to the homeworld rather than a connection between ordinary planets clears up some of the logistical programing problems?
It should be capitol, not homeworld. The former can change, the latter can't.
To the larger issue: The biggest object I had wasn't really about programming. As long as there is a single, best, calculable distribution, then appropriate code can be written. The problem was with having a fee to distribute resources which made it ambiguous what the best distribution would be, requiring a judgement call or player input to resolve, in a way that wasn't practical for the player to give input.
That said, even if the only restriction is amount of resources that can be sent (not a fee; unsent resources can be sent elsewhere), it can still be impractical to actually calculate the optimal solution...
Assuming you start with Input:
* A priority queue of projects that need up to some limit of a resource.
* A set of sources of the resource, which have a limited total amount of the resource they can provide to projects.
* A matrix of constraints giving a limit on how much of the resource each source can send to each project. A typical source will be able to send to most of the projects, but will have different sending limits for each project.
And you have these Requirements / Details:
* Projects higher on the queue should be funded as much as possible, before projects lower on the queue.
* Projects should be funded as much as possible, up to their funding requirement. Additional funding should go to other projects.
* Sources can send their resources to one or more projects, subject to their limited supply, the need of the project(s), and the pairwise limit between the source and project
* Projects can receive resources from one or more sources, subject to their total need, the supply of the sources, and the pairwise limit.
To solve this, one might employ a guess-and-revise scheme. Sources would be picked somewhat arbitrarily for the first project on the queue, to supply it as much as possible, given the available supply and its need. Subsequent projects would then be supplied in the same manner, though if they are unable to be supplied because a project higher on the queue took some of their supply, then an attempt to free up that supply by finding an alternative sources for the higher project would be made. This revising could go several layers deep, as supplying project 3 might require revising project 2's allocation, which might require revising project 1's allocation, etc. This would continue, adding each subsequent project on the queue until all projects are supplied as much as possible, hopefully with an optimal solution.
If I'm not glazing over too many nontrivial details, this might work... or would it? I'm not sure. gamedev.net hasn't been much help.
• With a scaling penalty it's harder to predict how much will be wasted. You can't make strategic choices if you don't know the consequences.
In a sense, that unpredictability is a good thing...
* It makes having predictable shipping amounts depend on having good control of your shipping routes.
* It's a good kind of randomness, which doesn't actually involve rolling dice, since the actual shipping limits you get end up being due to other players and real in-game conditions.
Also, we can give a prediction to the player about how much can be sent, and explain why by showing the shortest path available, likely when that planet is selected on the sidepanel.
• With a scaling penalty it's harder to display how much will be wasted. Though i suppose later in development it's likely that each planet or system will have an efficiency rating based on tech and governmental choices. The number of unsecure nodes might as well be a contributing factor.
Why would displaying this be any harder than a simpler 0/50/100 % system? You'd still have to put the number somewhere for each system, and overall...
• It seemed like too radical a change to be accepted.
It's really just a limit on how much each planet can sent to each other planet or to the homeworld or capitol. We've already considered this sort of thing, particularly for shipyards, which could be strategically imbalancing if they can spend a whole empire's production at any location, even far removed from that production within an enemy empire.
How a shipping limit is calculated is not really that important, compared to the nature of the input to the distribution calcuation (ie. limits).