Redistribution & Blockades: a simple solution

For what's not in 'Top Priority Game Design'. Post your ideas, visions, suggestions for the game, rules, modifications, etc.

Moderator: Oberlus

Message
Author
Kharagh
Pupating Mass
Posts: 97
Joined: Sun Nov 21, 2004 12:51 pm
Location: Germany

#31 Post by Kharagh »

I like solidcordon's proposal. It adds a lot more flavor to the game, as it makes the galaxy much more alive, especially the part about pirates becoming an independent empire.

Just because the game is a space opera doesn't mean it has to be unrealistic. KISS is nice and good, but IMHO this feature adds a lot of strategic depth, as it forces the player to make decisions concerning his trade routes. Is it better to pay a little tax to a renegade empire, or is it better to risk a confrontation? How can I optimize my trade routes?

I think a good trade system similar to the one proposed by solidcordon would make the game much more fun to play, which after all is the goal of FO.

User avatar
eleazar
Design & Graphics Lead Emeritus
Posts: 3858
Joined: Sat Sep 23, 2006 7:09 pm
Location: USA — midwest

#32 Post by eleazar »

Kharagh wrote:I think a good trade system similar to the one proposed by solidcordon would make the game much more fun to play, which after all is the goal of FO.
FO is supposed to be fun, but not only that, it's supposed to be a specific type of fun game.
A type that requires a minimum of micromanagement. That has these ideals:
Design Rules of Thumb wrote:•Realism arguments are frowned upon. Given two competing ideas, we’ll take the one that’s more fun over the one that’s more realistic.

•KISS. Keep it simple. We tend to like simple game mechanics that can be successfully described to a bright child.
If you considered the deliberate simplicity of the core game mechanics, it might become apparent that solidcordon's proposed level of complexity is out of place in a secondary aspect of gamplay.

solidcordon
Space Floater
Posts: 26
Joined: Sun Aug 07, 2005 8:35 pm

#33 Post by solidcordon »

blah
Last edited by solidcordon on Fri Dec 15, 2006 2:21 pm, edited 1 time in total.

marhawkman
Large Juggernaut
Posts: 938
Joined: Fri Jan 20, 2006 9:34 pm
Location: GA

#34 Post by marhawkman »

eleazar wrote:
marhawkman wrote:I don't like the bit about the remainder being lost. Or is it just the remainder of what they don't use?
where do you proposes the remainder goes?
What's lost is part of what would be exported under ideal circumstances.

If there's nothings ever lost then the whole thing falls apart, and we're left with the current situation of total blockade or total flow.
I was thinking of having the export be what the planet doesn't consume. Say it needs 50 food and generates 70. It consumes 50 then exports the other 20 to the rest of your empire. But if it's in "neutral" territory then your empire only gets 10 of the 20.

If you apply this the other way it makes no sense because you'd decrease the food supply to 35 before considering that the people are eating the food they produce.
Computer programming is fun.

User avatar
eleazar
Design & Graphics Lead Emeritus
Posts: 3858
Joined: Sat Sep 23, 2006 7:09 pm
Location: USA — midwest

#35 Post by eleazar »

marhawkman wrote:I was thinking of having the export be what the planet doesn't consume. Say it needs 50 food and generates 70. It consumes 50 then exports the other 20 to the rest of your empire. But if it's in "neutral" territory then your empire only gets 10 of the 20.

If you apply this the other way it makes no sense because you'd decrease the food supply to 35 before considering that the people are eating the food they produce.
Sorry, i didn't understand what you meant.
Naturally, a planet keeps what it need first. My proposal in no way changes how much a planet decides to share. The v.3 reqs are pretty specific about it anyway.

User avatar
Geoff the Medio
Programming, Design, Admin
Posts: 13587
Joined: Wed Oct 08, 2003 1:33 am
Location: Munich

#36 Post by Geoff the Medio »

solidcordon wrote:If simplicity is the requirement then movement of resources through nodes should be binary, either the route is closed or it's open.
Simplicity is not "the requirement"; it is a goal and guideline. The best solution is one that is complex enough to be interesting and fun, but not any more complex than that. That is, as simple as possible without being too simple. The motivation for this whole discussion is the belief that sharing everything without the possibility of blockades is too simple to be interesting, since empire shape doesn't matter. The suggestions for multiple different classes of neutral nodes and piracy generating new empires are too complicated, as the additional interest they provide isn't enough to warrant their detail. They're also off topic... This discussion is about the system by which resources are or aren't distributed, which as a system does not need to involve new empire creation, and the like.
eleazar wrote:A neutral node is a system that fulfills one of the following:
  • * Has not been explored by your side.
If you haven't even explored a node, then it doesn't exist for trade purposes. As an illustrative scenario, imagine some strage phenomenon transports a colony ship to the other side of the galaxy, and you make a new colony, with no knowledge of what starlanes or systems connect the colony to your other planets. The path between them is completely unknown, and no (abstract or otherwise) supply ships are going to pass between them.
eleazar wrote:Netural Nodes: Partial contribution of food occurs from planets whose connection to the homeworld must pass through a neutral starlane node. Partial contribution is 50% of full exchange. The remainder is lost.
I don't like the fixed 50% part of this. It's arbitrary, which as above I've said I dislike, but more so, it perhaps doesn't do enough to make empire shape important. Instead, how about the % lost of (attempted) shipped resources depends on distance travelled along starlanes connected to neutral systems. The relation between distance and % could be something like

shipping_effic = exp(-trade_factor*unsecure_dist)

where shipping_effic ranges from 1 to 0 (asymptotically), depending on unsecure_dist along lanes connected to neutral nodes on the path from the source to the empire capitol or trade hub, and trade_factor, which is some value determined by techs (perhaps with a meter attached to the empire, or somesuch).

Alternatively, the formula could be

shipping_limit = base_limit - trade_factor*unescure_dist

where shipping_limit is the mas allowed export of the resource from the source planet, and base_limit is the shipping allowed for 0 unsecure distance, which may be a function of that planet's production or construction or something else similar. This would result in a max possible shipping distance along unsecure routes, after which you get no net benefit.

A major benefit of either of these systems would be that the shape of the empire matters, in the sense that it's not just connected/must_pass_neutral/unconnected, in which the number of neutral systems passed doesn't matter. This is most observable when a source is very far from the sink, and must pass through many neutral systems; if there's no consdieration of the number of neutral systems passed, or distance travelled, then there's no difference between a very far source and a close but not quite connected source.

User avatar
eleazar
Design & Graphics Lead Emeritus
Posts: 3858
Joined: Sat Sep 23, 2006 7:09 pm
Location: USA — midwest

#37 Post by eleazar »

Geoff the Medio wrote:...The best solution is one that is complex enough to be interesting and fun, but not any more complex than that...
Amen.
Geoff the Medio wrote:
eleazar wrote:A neutral node is a system that fulfills one of the following:
  • * Has not been explored by your side.
If you haven't even explored a node, then it doesn't exist for trade purposes....The path between them is completely unknown, and no (abstract or otherwise) supply ships are going to pass between them.
Good point. Proposal modified.

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?
Geoff the Medio wrote:
eleazar wrote:Netural Nodes: Partial contribution of food occurs from planets whose connection to the homeworld must pass through a neutral starlane node. Partial contribution is 50% of full exchange. The remainder is lost.
I don't like the fixed 50% part of this. It's arbitrary, which as above I've said I dislike, but more so, it perhaps doesn't do enough to make empire shape important. Instead, how about the % lost of (attempted) shipped resources depends on distance travelled along starlanes connected to neutral systems. The relation between distance and % could be something like.
. . . . .
A major benefit of either of these systems would be that the shape of the empire matters, in the sense that it's not just connected/must_pass_neutral/unconnected, in which the number of neutral systems passed doesn't matter. This is most observable when a source is very far from the sink, and must pass through many neutral systems; if there's no consdieration of the number of neutral systems passed, or distance travelled, then there's no difference between a very far source and a close but not quite connected source.
Hmm, "Unsecure Node" expressed the idea better than "Neutral Node."

I understand there is a little less strategic depth in an flat unsecure-penalty than a scaling one. I think i would prefer a scaling penalty to the current binary all/nothing set-up.

I did consider a scaling penalty originally. Here's some reason why i didn't propose it.
• 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.
• 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.
• It seemed like too radical a change to be accepted.

marhawkman
Large Juggernaut
Posts: 938
Joined: Fri Jan 20, 2006 9:34 pm
Location: GA

#38 Post by marhawkman »

I like geoff's modified idea.
Computer programming is fun.

User avatar
eleazar
Design & Graphics Lead Emeritus
Posts: 3858
Joined: Sat Sep 23, 2006 7:09 pm
Location: USA — midwest

#39 Post by eleazar »

I probably should have left "Partial Exchange" vauge and refused to elaborate. The aspects of FO that this should mesh with are incomplete or non-extistant. Currently money does nothing, and Governmental choices that impact the economy are far away. It should be considered later as part of a much bigger picture.

So for now i'll say: "Partial Exchange is more than nothing and less than all. Something simple to be determined at a later date."

solidcordon
Space Floater
Posts: 26
Joined: Sun Aug 07, 2005 8:35 pm

#40 Post by solidcordon »


They're also off topic...
In the brainstorming section, off topic. ah ha ha ha ha ha ha
bye.

User avatar
eleazar
Design & Graphics Lead Emeritus
Posts: 3858
Joined: Sat Sep 23, 2006 7:09 pm
Location: USA — midwest

#41 Post by eleazar »

he just deleted all his posts. :?

User avatar
Geoff the Medio
Programming, Design, Admin
Posts: 13587
Joined: Wed Oct 08, 2003 1:33 am
Location: Munich

#42 Post by Geoff the Medio »

solidcordon wrote:
They're also off topic...
In the brainstorming section, off topic. ah ha ha ha ha ha ha
bye.
Off topic isn't necessarily bad, particularly in brainstorming...
eleazar wrote: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...
eleazar wrote: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).

User avatar
eleazar
Design & Graphics Lead Emeritus
Posts: 3858
Joined: Sat Sep 23, 2006 7:09 pm
Location: USA — midwest

#43 Post by eleazar »

Apparently i don't know when to quit.

I wasn't fully happy with how this was working out. In thinking about Ship Supplies i think i stumbled upon an basis for supply lines that would have most/all the strategic value of previous proposals, without the distribution calculation issues or behind-the-scenes mystery.

As before i'm trying to include the strategic value of supply lines, with an empire in which the shape matters— without including any micro drudgery or mysterious processes that only the AI understands and/or controls.


Attempt #3: Explicit Supply Lines
[edit: clarified explanations]

The player builds the supply lines— not as cargo ships you have to move around, but the routes supplies (fuel, ammo, production resources, whatever) can follow. I'll call them Planetary Supply Routes (PSR) to help distinguish them from a ship's supply lines.

* Supplies flow between colonies in adjacent systems (via invisible, instant local shipping). I.e. PSR automatically exist between adjacent colonies.

* To allow supplies to flow between non-adjacet colonies, additional Distribution Hubs can be placed in uncolonized (or uncolonizable) systems:
— * Distribution Hub Outposts (DHO) are cheaper than colonies, but do not grow or produce anything.
— * or possibly Mobile Distribution Hubs (MDH) are large slow ships which if arraigned in a chain can quickly extend the reach of a supply line.

* Supplies do not flow between colonies unless they are connected via PSR. Supplies flow freely between any planet connected to the same PSR network.

*Empires can use neighboring (directly adjacent) PSR networks as an automatic bridge to otherwise disconnected colonies with the appropriate treaty.

* PSRs are indicated by coloring the SLs with the empire's color. (see V.3 demo with colonies in adjacent systems.

* Blockades can occur in a producing system, or by destroying Distribution Hubs (mobile or fixed). Blockades require a military presence.


Since the PSR are explicitly created, the player has some strategic options: a single well-defended supply backbone through his empire, or a redundant web of PSRs.
Supply lines become more obvious and concrete entities without the micro of simulating/controling actual cargo ships.
Last edited by eleazar on Tue Jul 10, 2007 2:16 am, edited 3 times in total.

User avatar
eleazar
Design & Graphics Lead Emeritus
Posts: 3858
Joined: Sat Sep 23, 2006 7:09 pm
Location: USA — midwest

#44 Post by eleazar »

Some further explanation of Explicit Supply Lines.
(in this thread "supply lines" refer only to lines that pass a planet's production from one colony to another. Supply lines that connect ships are not under discussion here.)

* Distribution Hubs probably have a maintenance cost.

* There is no concept like the "neutral/unsecure nodes" of my previous proposals.

* I'm keeping the design principle of only one Stockpile per Empire. This allows the simple readout along the top of the screen which displays your entire empires stockpile of resources: Food, Minerals, and Money. The result of this is that a resources in a colony which is cut off from the Empire's Capitol will probably be wasted.
This means it is usually a bad thing if all your colonies aren't connected by Supply lines. Production resources will probably be wasted.


Example:
The glorious Qew Empire is shaped roughly like an hourglass. All colonies were connected by supply lines until a space monster came an ate everything in the bottle-neck system which connected the two halves of Qew. The presence of this monster acts as a blockade separating the physical resources from flowing from one half of the empire to the other. The capitol and homeworld is located in the souther half.

* Research and Income from the separated colonies are unaffected. These intangibles can be "broadcast" to their destination no matter what obstacles lie between.

* Planetary Production can be redistributed, according to the normal criterion (see v.3 reqs) but only within each discrete half. I.e. a mine in the north cannot feed a factory in the south. Optimal distribution should be easy to calculate

* Excess food and minerals (if any) in the southern half can be stockpiled as usual. A supply route connecting to the Capitol is necessary to add or remove something from the stockpile.

* Excess food in the north is eaten or spoils.

* Excess minerals in the north are wasted. I don't have a plausible explanation for this, except that it prevents the micromanagy badness of mineral stockpiles springing up on various planets.

* Excess industrial production is, of course, wasted if there is not enough things to built in the north.


Most likely the empire will be disrupted because at least one resource was primarily being produced in one half while being consumed in the other. Since the south was colonized first, it is probably more developed, and the newer northern half is to some degree starving, has idle factories, or things aren't getting built.

In short, divide and conquer is a very valid strategy in this proposal. If the Qew cannot reestablish the supply lines between the two halves, the north is vulnerable to conquest and/or rebellion.

The Qew may have been foolish to establish a so easily divided empire, but perhaps they had no better options.

The emperor has the option of building an empire in which various sections can survive temporary separation, or an empire which is less defendable, but more efficient.

User avatar
utilae
Cosmic Dragon
Posts: 2175
Joined: Fri Jun 27, 2003 12:37 am
Location: Auckland, New Zealand

#45 Post by utilae »

@eleazar - Most Recent Post

Asume that Mines provide minerals to Factories.

If we asume that the Qew Empire has 2 Mines and 2 Factories in the top empire, and 2 Mines and 2 Factories in the bottom empire, then the Qew Empire should be sweet as the ratios are 1:1 of supply:demand.

In the case that the Qew Empire has 3 Mines and 1 Factory in the top empire, and 1 Mine and 3 Factories in the bottom empire, then the Qew Empire Is in trouble. The top empire has excess excess supply. While the bottom empire has a lack of supply.

Post Reply