Basic Outposts

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

Moderator: Oberlus

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

Re: Basic Outposts

#61 Post by Geoff the Medio »

eleazar wrote:prevent the construction of new colonies on hostile/uninhabitable planets unless the "environmental encapsulation" tech was researched.
No, there's no way to do that. Part of the idea with "outposts" or zero-population colonies was that they didn't have the same location restrictions as proper (populated) colonies.

I considered making it not allowed to found a colony (including zero-population) on uninhabitable planets (for the colony ship's species), but ended up allowing it. But originating colony ship species has no effect on zero-population colonies, since they don't have a species... So, it seemed odd / fiddly to require a particular species on an colony ship to found a species-less zero-population colony, or what will depopulate into one.

It could be set up so that only zero-capacity colony ships have no species-dependent colonization restrictions. Complicated rules of this sort make things more difficult for players, though...

Also, lore-wise, I figured an "outpost" or zero-population colony is small enough to not require any special fancy tech to create. It could be little more than a ship set down on the surface, or in low orbit. Environmental Encapsulation or similar would be required to support a large self-sufficient colony - enough to have a nonzero colony population in-game...

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

Re: Basic Outposts

#62 Post by eleazar »

Geoff the Medio wrote:
eleazar wrote:Also, i planted a colony on a lousy world and watched it die. The production of research started falling after population reached 0, but persists for several turns afterwards before research dries up completely.
That's expected... In terms of game mechanics, the research meter moves towards the target research, which was presumably 0 after the colony depopulated, but won't get there immediately (on its own).
Hmm, i tried to disable production on an empty planet by putting "PopulationCenter" in the activation, but "PopulationCenter" somewhat misleadingly seems to includes zero population outposts. It would be nice if there were a term for colonies and outposts, and one just for colonies with population.

Geoff the Medio wrote:
eleazar wrote:prevent the construction of new colonies on hostile/uninhabitable planets unless the "environmental encapsulation" tech was researched.
No, there's no way to do that. Part of the idea with "outposts" or zero-population colonies was that they didn't have the same location restrictions as proper (populated) colonies.
Yeah but it was "different location restrictions" not "no location restrictions".
Geoff the Medio wrote:I considered making it not allowed to found a colony (including zero-population) on uninhabitable planets (for the colony ship's species), but ended up allowing it. But originating colony ship species has no effect on zero-population colonies, since they don't have a species... So, it seemed odd / fiddly to require a particular species on an colony ship to found a species-less zero-population colony, or what will depopulate into one.
Putting a colony on an unsuitable world, and then watching all the population die to make an outpost is possible and may occasionally be strategic, but i don't think it should be considered "normal" gameplay. I would be no loss if it were not possible to place a doomed colony.
Geoff the Medio wrote:It could be set up so that only zero-capacity colony ships have no species-dependent colonization restrictions. Complicated rules of this sort make things more difficult for players, though...
"You can put an unmanned outpost in places where you can't put a colony" isn't that complicated. The downside of the current arrangement is that the game gives you the option of colonizing everywhere -- even when at the beginning of the game most of the options are bad. Saving the player's time and attention by only giving the option to found colonies that could survive, probably outweighs that complication.
Geoff the Medio wrote:Also, lore-wise, I figured an "outpost" or zero-population colony is small enough to not require any special fancy tech to create. It could be little more than a ship set down on the surface, or in low orbit. Environmental Encapsulation or similar would be required to support a large self-sufficient colony - enough to have a nonzero colony population in-game...
I'm not worried about plausibility or lore. We can rationalize it either way.
Besides the point above, i'm concerned with the progression of the game. Theres a better sense of growth and progress, if basic things like, where the player can put outposts improves as the game progresses. This might not have anything to do with species, but gas giants could need a more advanced outpost tech. And having the amount of places where you can found colonies increase with tech more clearly illustrates your advancement, than numbers changing


Anyway, those are my thoughts. Leave it alone for now-- i can move on with things as they are. Maybe playing with it i'll come around to your view.

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

Re: Basic Outposts

#63 Post by Geoff the Medio »

eleazar wrote:Putting a colony on an unsuitable world, and then watching all the population die to make an outpost is possible and may occasionally be strategic, but i don't think it should be considered "normal" gameplay. I would be no loss if it were not possible to place a doomed colony. [...] Saving the player's time and attention by only giving the option to found colonies that could survive, probably outweighs that complication.
I can't easily make things so that players can't place colonies on zero-target-population planets (ie. planets where the colony can't survive long term) because the target population depends on the species on the planet and requires a meter update to calculate. The client does this meter update in a sort of kludgy way when a colony ship is selected (all unpopulated planets (possibly only in the shown system for the sidepanel and/or system containing the selected colony ship?) are temporarily given the selected ship's species, then a target population meter update is done, and then the planets' species is reset). Doing this on the server would be complicated, as it would have to happen several times (at least during order processing when ships and planets are marked as going-to-be-colonized/ing, and during actual colonization when the marked planets are modified and ships destroyed) and possibly would have different results depending on what stage turn processing is in...

What I can do is add a test for colony ships with nonzero colonist capacity, and make those not be able to colonize planets with worse than hostile environment (ie. uninhabitable) for the colony ship's species. Getting the environment quality of a planet for a species doesn't require any meter updating.

I'd rather do this now than wait, as I've looked at the relevant code recently and have all the places changes need to be made in mind (hopefully).

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

Re: Basic Outposts

#64 Post by eleazar »

Geoff the Medio wrote:What I can do is add a test for colony ships with nonzero colonist capacity, and make those not be able to colonize planets with worse than hostile environment (ie. uninhabitable) for the colony ship's species. Getting the environment quality of a planet for a species doesn't require any meter updating.
That works for me. Otherwise the "uninhabitable" label doesn't mean anything.

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

Re: Basic Outposts

#65 Post by eleazar »

Nice touch.

Code: Select all

r4975 | geoffthemedio | 2012-07-04 16:43:43 -0500 (Wed, 04 Jul 2012) | 3 lines

...
-Changed "Colonize" button text to "Place Outpost" when selected colony ship has zero capacity.

------------------------------------------------------------------------
r4974 | geoffthemedio | 2012-07-04 15:45:31 -0500 (Wed, 04 Jul 2012) | 2 lines

-Modified colonize orders so that nonzero capacity colony ships can't found colonies on uninhabitable planets.
...

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

Re: Basic Outposts

#66 Post by marhawkman »

Excellent!
Computer programming is fun.

User avatar
Vezzra
Release Manager, Design
Posts: 5510
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: Basic Outposts

#67 Post by Vezzra »

Geoff the Medio wrote:
Vezzra wrote:Ok, just for clarification: does current pop or target pop determine "outpost"/"colony" status?
At present, neither. To-be-written content that defines "outpost" will determine the answer to that... I suspect current population would be the relevant number, though.
After watching the discussion/development for a while I wonder if we can safely assume already that current pop = 0 determines "outpost" status. I'm asking because I wonder if implementing an "IsOutpost" member function for the planet class and exposing it to the PythonAI could be useful?

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

Re: Basic Outposts

#68 Post by eleazar »

Vezzra wrote:
Geoff the Medio wrote:
Vezzra wrote:Ok, just for clarification: does current pop or target pop determine "outpost"/"colony" status?
At present, neither. To-be-written content that defines "outpost" will determine the answer to that... I suspect current population would be the relevant number, though.
After watching the discussion/development for a while I wonder if we can safely assume already that current pop = 0 determines "outpost" status.
I think so. It has been the plan for a long time, and has roots in MoO2.
Vezzra wrote:I'm asking because I wonder if implementing an "IsOutpost" member function for the planet class and exposing it to the PythonAI could be useful?
Currently we have "PopulationCenter" which a little confusingly includes zero pop outposts, though we do need an inclusive type.

"Outpost" (i don't think we normally put an 'Is' in front) would certainly be more succinct than: TargetPopulation low = 0 high = 0

User avatar
Vezzra
Release Manager, Design
Posts: 5510
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: Basic Outposts

#69 Post by Vezzra »

eleazar wrote:..."Outpost" (i don't think we normally put an 'Is' in front) would certainly be more succinct than: TargetPopulation low = 0 high = 0
You're referring to content scripting here, I was talking about the python AI. But you're right of course, providing a "outpost" condition for the content scripts is probably even more important than an "IsOutpost" function for the python AI.

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

Re: Basic Outposts

#70 Post by Geoff the Medio »

PopulationCenter is a C++ class, which the C++ class Planet is derived from, so all Planet are PopulationCenter, even if they have no population at present (sort of because they *could* have population and would still be a Planet if that happened).

Outposts are presently planets which have zero population and which have an owner. Conditions can easily be written to select such objects... something like

Code: Select all

And [ Planet Population high = 0 OwnedBy AnyEmpire ]
If a single-word condition or python property is needed, an IsOutpost function would probably want to do the same tests.

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

Re: Basic Outposts

#71 Post by eleazar »

Revision 5040
I'm not sure i like exactly how it works, but asteroid mining and gas giant generators are now not broken with outposts.

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

Re: Basic Outposts

#72 Post by Geoff the Medio »

eleazar wrote:I'm not sure i like exactly how it works...
Planets that have zero population and no owner are just empty planets. Planets with nonzero population and no owner are neutral natives. Planets with nonzero population and an owner are player-empire controlled populated planets. Planets with zero population and an owner are player-empire controlled nonpopulated outposts.

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

Re: Basic Outposts

#73 Post by eleazar »

I mean i'm not sure i like the effects i've scripted. I'm not complaining about the scripting language.

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

Re: Basic Outposts

#74 Post by Geoff the Medio »

I wasn't explaining the scripting language... I was explaining how the game mechanics work.

User avatar
OllyG
Space Kraken
Posts: 151
Joined: Wed Jul 20, 2011 12:03 pm

Re: Basic Outposts

#75 Post by OllyG »

I built the relavent buildings for asteroid ships on an asteroid outpost, but I cannot build the ships. When I look at unavailable ships the asteroid ships seem to pass all the required conditions, but do not appear in the available list.
Has anyone managed to build any asteriod hulled ships recently? I am using version 5127 - windows.
Also when I get Silmaline Crystals on an asteroid field, the description talks about getting 25 production when using mining focus and increased growth for Litic species. I cannot use foci on asteroid fields (which I beleive is intentional).
Artificial Minds tech works on outposts, since they have Infrastructure. If techs working on Infrastructure affect outposts they can start to produce quite a lot of resources.
Overall the new system for outposts (zero population) is looking good.

Post Reply