A new way to manage empire spending sliders

My ideal empire has have slave planets building starships, other core planets doing research, and frontier planets building up their infrastructure. I can't do that. If I want a ship, it's either get every planet building other ships, waste a chunk of every planet's industry, or buy it outright and waste money.

First, there needs to be something set up that spilts spending on each planet based on what jobs it can do. REALLY. If the Mil/Soc/Res ratio is 2/4/4, and there's nothing in the social queue, it should go 1/3 military, 2/3 research. If there's no ship, but a building available, it should go half and half into the other two. It will fix all the wasted production, and it doesn't need any extra buttons of UI changes. And the reasoning behind those if/thens shouldn't be that hard to put in.

I originally was thinking of a way to link build queues and governors and sliders and everything, but I just thought of something simpler. (I'll write up that original idea if I can just get it to make sense in my head :-p )



Abstract: Run the whole economy through the current global slider, but focused to the most appropriate planets. The goal is to manage spending in terms of maximizing the empire's production of ships and research, and putting social spending on newer planets where it is needed, automatically or through the use of "economic governors". Give warnings on the slider screen if all governor requests cannot be fulfilled.


An economic governor does even less than a build queue - all he does is wave his hand in the air and say "gimme money" (mil governor asks for mil funding, research for research, social for social.) For a given funding type, there are different infrastructures that use it most efficiently. Shipyards and manufacturing go with military, labs go with research. Social would normally go with manufacturing, but given that it should ideally go to planets with less buildings, I'll ignore manufacturing capability when assigning social money. (In theory, you could automatically assign social spending to those with the least industry, but I'm not sure how that would work in practice, so I'll leave it out for now and think about it.)

A certain class of funding goes to planets in the following order:
Governor-tagged, high infrastructure
Governor-tagged, low infrastructure
No gov, high infrastructure
No gov, low infrastructure

The money trickles down like water in a stack of jugs. The second level doesn't start filling up until the first level's full. If there's a tie, the money's split evenly.

Example: 20% military spending, 20% social, 60% research.
You have 5 colonies - 1 with a basic lab, 1 with a basic shipyard, 3 with nothing. Equal in every other way.
No governors are turned on.

The AI looks for the best place to put its military cash, finds the shipyard planet. The colonies are equal (take 20% each), so the fit's perfect. Every cent of military money goes there, and noone else builds ships.

Next, it does social. No governors, and social spending isn't affected by infrastructure, so it does nothing.

Then, it does research. It finds 1 planet with a lab, and 1/3 of the research money fits there, so it puts it there.

Final step - the leftovers. We've got 20% social and 40% research left, and three planets doing nothing. So, we just set them to do 1/3 social and 2/3 research.


This gives the best productivity for the current improvements. (Assuming I understand the economics right, but even if the numbers aren't right, I think the idea is.)Also, you don't have to worry about the military and research planets being left behind on the social side.

Example: 50% research, 50% social.
You have 2 colonies - A with a lab, B with nothing. Equal in every other way.
No governors.


Initially, the AI will go full research in A and full social in B. Eventually, B will build a lab. At this time, their research efficiencies will be the same, so both planets will get a 50/50 spending rate. B will be slightly ahead of A in the build queue by now, and it might have more manufacturing capacity (or get it soon). In this case, B could end up building an advanced lab before A. If this happens, then B will get 100% of research spending, and A will get 100% social. This will give it a chance to catch up on the social side of things. Throughout the whole process, the research money is being put where it can make the most difference, and the two colonies will stay in balance. (Same for military, only it should be coded to swap production once a ship build's finished, so you don't end up with half-finished ships everywhere.)


The good thing is, there's already sorted planet lists for top military and social spending planets. (We don't need it for research cause we know what it's researching.) By looking at the top military list, we can see all the planets that are getting _any_ military funds - once we see one that's getting 0, we know everyone below it is getting the same. So, we can manage all ship production from a few major worlds.


There are some other issues here. You might want ships built on a specific planet for whatever reason. Or, if you've got two planets (one with shipyards for hp, one with fusion plant for manufacturing), you might have a reason to prefer a a few strong ships over more weak ships, or vice versa. That's where governors come in.

Like I said, an economic governor just puts his hand up for a certain color of money. He doesn't handle what gets built (ships or buildings), that the job of you and the build queues. But you can easily set up a build queue of all the buildings you want on every planet, and another one for military planets. Or you can add shipyards to each military planet as you go. The governors are there to demand money from the economy, but not from you. If you've set military to 0, then no money will go to military, no matter what the governors say. All you have to remember is to put the governors on the right places. If you've got 10 equal planets and you want 10% military, just set one governor and you can manage all your ships from one planet (and lose lots of rounding downs). If you're worried about its economy, switch to a different planet, or just get some military improvements built, turn the governor off, and the ai will figure it out automatically, like before. Having "military capacity" and "research capacity"
lists in the planet lists could also be helpful here.




Consider different spending rates for this situation:

4 colonies - A & B are equal military powerhouses, C has only shipyard, D empty
Calculating Mil/Soc/Res spending out of 100bc

Mil gov on A & B, social gov on D.
50/50/0 -> A & B: 25 mil, C & D: 25 soc
(Same scenario like with the two labs.)

Mil gov on A & B, social gov on D.
70/20/10 -> A & B: 25 mil, C: 20 mil, 5 res, D: 20 soc, 5res
(D spends all the social, C spends the remaining military, the research is split evenly.)


Mil gov on A & B, social gov on C.
70/20/10 -> A & B: 25 mil, C: 20 soc, 5 mil, D: 15 mil, 10 res
(C gets all the social cause we told it so, but it also get as much remaining military as
possible, cause it's still got room, and it's better to build ships than D.)


Even if you do unexpected things, it can still manage something half-decent.

Mil gov on A & B, research gov on C, social gov on D.
75/0/25 - A & B: 25 mil, C: 25 res, D: 25 mil.

Now, the resources aren't being used properly. Even if D had a lab, this'd happen. The lesson is, keep an eye on which governors are turned on.

Going back to the two research colonies with 50/50 spending - without governors, they'll automatically keep a rough pace with each other. If you want to force one, you can set a governor to research and the other will automatically go social. If you want them both social, you could set both governors on social, but you'll still get 50/50 spending on each colony. (There could be a warning message on the slider screen if you haven't assigned enough resources to give all governors full spending.) Of course, if you really want all your colonies on social spending, not research, just set the slider to 100% and your problem's solved.

If there's not enough money to keep all the governors happy and you still go ahead, it'll split the money using the same logic as non-governed planets. If one's better, it'll get all the money. Otherwise, even split.

Example. A: military planet, B: military planet - same buildings, but with slaves
Both mil governors on
50 mil, 50 soc: B gets military funding, A gets social.

If A gets an improvement that makes it better to build than B, the production switches. If you want more or less ships than that, change the global sliders. These are the same results you'd get if both governors were off.

The logic still works with 2 planets or 20. If you get you governors mixed up, you could just wipe them all, and see what the ai does. You could check out the planets with the best production capacities from the list and tweak governors as much as you want. Remember, the point isn't to have a governor on every world. The point is to have a few specialist worlds for ships and research, and a few new colonies to bump up. And though ungoverened worlds will often get out of step (like the two labs), the ungoverned worlds as a whole will be even more productive than before.


So, um, yeah. Is that unambiguous enough? Has the light bulb gone off? Is it codable with the way things are programmed now? Lemme know what ya think!
997 views 12 replies
Reply #1 Top
(edit button not showing up)

Something I thought about, but forgot to mention - discovering new buildings. If you're not using governors, just add it to the build queue where you want it. It'll get put in when the selected planets get out of step (like the two labs). Same with governed planets, only that'll wait until you change funding or turn off the governor.

Of course, you can do the same thing with the sliders. If you've developed a new building that you want on your research and developing planets, but you want your military to keep building ships cause you need them, just add the building to your build queue, and cut your research spending for a bit. They'll go social and get to it. When your military can take a break, cut their spending and they'll upgrade too.

That's assuming you use one build list for everything, and add advanced labs/shipyards by hand. If you already use more lists, it should be easy to get the same effect.
Reply #2 Top
Good idea. Not sure if they can do it but a slider for each planet to vary the amount of Military vs Social spending would be great.

Also, what is seriously needed is a fix to the NOTHING bug. When you select NOTHING for spending then NOTHING should appear in the box that shows what you are building. Now, even if you pick NOTHING the next time you view that planet the build box will be blank forcing you to AGAIN scroll through the build choices to see if you should be building something when you already did that the last time. This bug is a big time waster.
Reply #3 Top
While I appreciate the time and thought that went into the above, had you bothered to read past threads you would know that planet specific sliders stand as much chance of being implemented as does multiplayer (that is to say this is fundamental game design decision that won't ever be changed).

We will probably get some sort of fix to the unpopular issue of 'Nothing' = money disappearing into the cosmos in the expansion pack, but that's about all we can expect.

For what it's worth, I would like to see my 'nothing' spending go somewhere useful, but I don't want to see slider allocation any more complex than it is.
Reply #4 Top
The idea I had had for this was a "priority" setting. The way this would work would be you could designate a direction for wasted input to go. That is, you have 100% military spending, but no military production on a particular planet, but you have research as a secondary priority. Or you have social as a secondary priority, then research as tertiary.

This could even be implemented at the empire level, allowing you to continue doing research while still building important key projects. IMO, there should be a cost associated with using this tactic, in that the "diversion" of resources is not maximally efficient.

Let's use 90% as an example. You really need to crank out a military unit in a particular spot, but don't want to or can't afford to buy it, yet you don't want to abandon your research. So, you set military spending to 100% and divert to research. That 90% reduces your research capacity empire wide by 10% versus using 100% research, but seems more reasonable than setting up a 90/10 ratio and taking forever to complete your project.

In other words, the idea is to take any "wasted" production and automatically redirect it, with a penalty. This might allow a lot more flexibility without overcomplicating the wonderfully simple interface that Gal Civ has. Thoughts anyone?

last thought...I'm fairly new, so someone may have made a similar suggestion previously. if so, I apologize.
Reply #5 Top
"While I appreciate the time and thought that went into the above, had you bothered to read past threads you would know that planet specific sliders stand as much chance of being implemented as does multiplayer (that is to say this is fundamental game design decision that won't ever be changed)."

I know. That's why it doesn't use planet specific sliders. The only sliders used are the same whole-empire ones we've got now. The governers for each planet are a simple toggle (military / social / research / none). And the stuff about redirecting the money just works like invisible sliders in the background, after you've made your empire-wide slider choices.
Reply #6 Top
I don't want sliders for every planet but I really like the idea of the thread-creator... If nthing is selected in one of the producing fields, it should be treated for that planet like the spending for it was 0 and equally share the leftover between what's not nothing.

The only problem I see is that the AI got so used to it as it is now, that they had to change someting there...
Reply #7 Top
Well, it seems simple to me. My opinion is to make nothing mean nothing. That requires no interface fix at all, no new buttons, no new sliders. Now, how the unspent money is recycled is another matter entirely. But the short term step is to stop throwing the money totally away.
Reply #8 Top
Yeah, fixing dead production and re-distributing it based on the empire's slider settings should be easy to put in. The only problem I see with doing just that and nothing else is if you set the sliders to say, mil = 0, soc = 50, res = 50, then your fully developed planet will go 100% research, and your border planet will go half/half social and research, so you're really getting 25% social, 75% research. And that could look kinda confusing after a while. The only way
to really get 50% social and 50% research on those
planets (as the total output, that is) is to set the sliders at 100 social, 0 research.


You could change the planet ai to have:

1)if ship_waiting then fund it with all available
2)if building_waiting then fund it with all remaining available money
3)put all remaining money into research.

This is just a cheaper way of doing my economic governors, really. It implies that if you tell a planet to build a ship, you want it to put as much
money into it as possible, and it should have priority over buildings. Research is leftovers. If you want
to jack up research to 100%, you can still do it just
by moving the empire sliders.

e.g. 4 planets:
A has ship & buildings in queue
B has ship only
C has buildings only
D has nothing to do.

empire-wide Mil/Soc/Res: 25/50/25
(the money drops step by step as it gets allocated)

25/50/25 -> A & B spend 12.5 each on ships (the shipyards as a whole want 50bc, they only get 25, so they split it evenly)

0/50/25 -> A spends 12.5 on social, C spends 25 on social (there's more social cash available, but their production's maxed out)

0/12.5/25 -> B & D have spare production, but they
don't have any build orders, so they put this money
into research: 12.5 to B, 25 to D

The spending percentages for each planet ended up at:
Mil Soc Res
A: 50 / 50 / 0
B: 50 / 0 / 50
C: 0 /100 / 0
D: 0 / 0 /100

This still doesn't match perfectly with the sliders
(we asked for 50% social spending across the empire,
we only got 37.5%), and it doesn't take planet efficiency into account, but at least the planets you've given jobs to do don't limit themselves to the empire-slider percentages - A can go 50% military instead of only 25%. If you want all the planets to build ships at the given percentage rate, give them all ship orders and it'll happen. Same for buildings.


If you wanted all research, you'd still get it by jacking up the sliders, cause the shipyards would split 0bc between them. And if you want all military, you can jack it up to 100% - but only the planets with ship orders would use it, the rest would spend it on social and research. Of course, once you give the other worlds ship orders, they'll switch their money to 100% military as well.
Reply #9 Top
Well, I had another go at this at uni (i was bored), i tweaked it a bit more. This idea doesn't have any UI changes at all, just a different algorithm for assigning money. Well, there are a few possible changes to make things easier - for example, you could have a line on the sliders (which you can't move) which shows the total spending in military and social requested by all your planets, and you could have a different slider lock that automatically moved them on the fly, allocating money based on what jobs you assign, but these changes aren't necessary for this thing to work. It'd have to be recalculated across the empire whenever you changed a slider or a planet's build queue, but only four times at most - once for each planet type (see later). It shouldn't be too complicated to get going.



Assumptions:

-Giving a planet a ship and building -> you want resources split 50/50 on those jobs.
-Giving a planet one job -> implies you want as much resources put into that as possible
-Giving a planet no job -> full research
-If you want those planets to do some research, and not just go all construction, you'd change it by cutting ship/building funding.
-If you really want a ship/building planet to focus on one job only, you'd remove the other one from the queue.



Okay, there's four types of planets:

A: ship + building in queues
B: ship only
C: building only
D: nothing


-- begin maths - if you're not interested in how it works and just what it does, scroll to the end



The number of planets of each class is irrelevant, as each planet in each will split funding by the same percentages. (If a huge A world gets 30/30/40 funding split, so does a tiny one with almost no industry). Also, different group sizes - for example, 10 As vs 3 Bs - will affect how much money goes where, but the principle's the same. So for this, we can assume that there is one of each planet class, with a production capacity of 100bc.


If we set the empire funding to 50/50/0, class A planets will do exactly that. However, with empire funding at 50/0/50, A will have half of its production unused, but available for ship work. If it will bring the empire-wide spending closer to what we asked in the sliders, we can overdrive A's spending, up to 100/0/0 if necessary. How this happens is with a second round of money allocations.

Each planet requests as much money as they can.

For each class A planet, put in the following requests:
round 1 military for 50% production capacity
round 2 military for 50% production capacity
round 1 social for 50% production capacity
round 2 social for 50% production capacity

Each class B requests round 1 military funding at 100% of its capacity.
Ditto for class C and social funding.

(Actually, if a job gets completed next turn, you could set it to request only it needs to finish, but I won't worry about that here.)



Here's what happens:


Split military money evenly among all round 1 military requests. (If the planets want 200bc and I've only got 50, they each get a quarter of whatever they put in for.)

Split social money evenly among all round 1 social requests.


Case 1: If all round 1 military and social requests have been met, then all class ABC planets are working at 100%. Spend any remaining military and social money on research on class D planets, along with the original research money.

Case 2: If we have run out of military AND social money, then there are free workers on all class ABC planets, but they can't work on ships or buildings (we've limited the budget). However, there will be just enough research money left to get them all working in labs.

Case 3: If all round 1 military requests were met (possibly with some change leftover), but we ran out of social money, then class A planets could be used for extra ships. Split up whatever change we have (if any) to fill round 2 military requests. If we still have military money left, or unused workers, put it/them on research.


Case 4: Similarly, if all round 1 social requests were met, but we ran out of military money, then we can use class A planets for extra buildings.






Total round 1 military requests: 150 (A's 50, B's 100)
Total round 1 social requests: 150 (A's 50, C's 100)

Total round 2 military requests: 50
Total round 2 social requests: 50



I'll do an example of each case (except 4, it's just the same as 3 really)


Case 1

Requested empire spending: 180 / 180 / 40 ( 45 / 45 / 10)

After round 1 military & round 1 social
A: 50 / 50 / 0
B: 100 / 0 / 0
C: 0 / 100 / 0
D: 0 / 0 / 0
30 military cash spare, 30 social cash spare - add to research, with the original 40

A: 50 / 50 / 0
B: 100 / 0 / 0
C: 0 / 100 / 0
D: 0 / 0 / 100


Total: 150 / 150 / 100 (37.5 / 37.5 / 25)





Case 2

Requested empire spending: 40 / 80 / 280 ( 10/ 20 / 70)

After round 1 military & round 1 social
A: 17 / 23 / 0
B: 23 / 0 / 0
C: 0 / 57 / 0
D: 0 / 0 / 0

110 military cash wanted, 70 social cash wanted - use spare workers for research
A: 17 / 23 / 60
B: 23 / 0 / 77
C: 0 / 57 / 43
D: 0 / 0 / 100

Total: 40 / 80 / 280 ( 10 / 20 / 70)


Case 3

Requested empire spending: 180 / 20 / 200 (45 / 5 / 50)
After round 1 military & round 1 social
A: 50 / 7 / 0
B: 100 / 0 / 0
C: 0 / 13 / 0
D: 0 / 0 / 0

30 military cash spare, 130 social cash wanted
The class A planet originally put in a second round bid of 50bc, but 7 production units were used on social - it only has 43 "workers" left. Still, it can use that military money here, leaving 13 free. Since military and social are all spent, all remaining workers can be put on research.

A: 80 / 7 / 13
B: 100 / 0 / 0
C: 0 / 13 / 87
D: 0 / 0 / 100

Total: 180 / 20 / 200 ( 45 / 5 / 50)

For comparison, I'll do this example with the simpler idea of: if no job for a certain type of money, split it in the other two categories by their relative slider settings. (e.g. if it's 40/20/40 and there's no ship, split the ship money 1:2 social:research.


Requested empire spending: 180 / 20 / 200 (45 / 5 / 50)

A: 45 / 5 / 50
B: 47 / 0 / 53
C: 0 / 9 / 91
D: 0 / 0 / 100

Total: 92 / 14 / 294 (23 / 3.5 / 73.5)

There's no wasted production, but the final output is nothing like what you requested from the sliders.


-- end maths

Okay, here's the summary of all three. For each case, you can read the asked funding you set with the empire sliders, the percentages set on each planet type, and the total percentage spent on military, social, and research.


Case 1 - empire sliders at 45/45/10 Mil/Soc/Res

A: 50 / 50 / 0 (ship + building planet)
B:100 / 0 / 0 (ship only)
C: 0 / 100 / 0 ( building only)
D: 0 / 0 / 100 (nothing to do)

Total: 37.5 / 37.5 / 25



Case 2 - empire sliders at 10/ 20 / 70

A: 17 / 23 / 60
B: 23 / 0 / 77
C: 0 / 57 / 43
D: 0 / 0 / 100

Total: 10 / 20 / 70


Case 3: empire sliders at 45 / 5 / 50

A: 80 / 7 / 13
B: 100 / 0 / 0
C: 0 / 13 / 87
D: 0 / 0 / 100

Total: 45 / 5 / 50



So the money's sent around in an intelligent way. Note that if you actually like having ship and building money going to every planet at once, give them all ship & building orders, and the money gets divided just like it does now. Cool, huh? Well, I think it's cool, otherwise I wouldn't have bothered writing all this stuff up :)


[Message Edited]
[Message Edited]
Reply #10 Top
Sounds cool to me... the "nothing" = "spend all the cash with no return" is probably the most annoying thing in Galciv right now (the game still rocks, but this "feature" makes me go grrr...)

I would adore the ability to have it so that any planets that still have things in their governor build queue would do x% social spending and the other planets would use that x% elsewhere.
Reply #11 Top
I already suggested somethere that TheQuack mentioned here, but i thought about 7 sliders instead of 4 - so you can set exact spendings for all 4 kinds of planets.

~SDC~
Reply #12 Top
Only thing is, you'd need some more info available to
do things like see the combined spending percentage
on military across the empire, or how much industry is
available on each planet class.




class A:
| | |
| | |
| | |
M S R
Capacity (the sum of the money each planet
in this category could spend): 300bc


class B:
| |
| |
| |
M R
Capacity: 200bc

class C:
| |
| |
| |
S R
Capacity: 400bc

Class D (no sliders)
Capacity: 300bc

overall:
| | |
| | |
| | |
M S R
Total industry: 1200bc

With those capacities, you can see why moving A's military slider up say, 10%, results in a higher empire-wide military spending than moving B's the same amount.

There's two different tacks you could take from here.

1) - Player controls all seven planet sliders independently of each other. The three empire sliders are unmovable - they just show the level of spending across the empire. So, if you want 20% mil total, you play with the A & B sliders until the empire mil slider reads 20.

2) - Player sets empire spending with the sliders, and
then adjusts the planet sliders. With this one, there
are only two places military money can go (A & B), and two for social (A & C). So, the sliders could be inverse-linked: If you've set empire-wide military spending at a certain level, then start bumping down A's mil spending, B's would automatically go up.


They both involve a bit more thinking for the player, and some big ui changes. The main advantage over my idea is that if you want class A planets to go 100% ships and class C to go 100% social, it can be changed at the sliders screen. Of course, if you really want that, you shouldn't leave buildings in their build queues, should you? :p

They might add more sliders later down the road, but while we've got just three - anyone else have some ideas on how the money pool should be divided (behind the scenes) between different planet classes? The main thing is that in each of the 4 funding cases, it should behave similar to what a real person micro-managing every planet class would do if they had all those extra sliders.