Specials and Monsters frequency
Moderator: Oberlus
Forum rules
Always mention the exact version of FreeOrion you are testing.
When reporting an issue regarding the AI, if possible provide the relevant AI log file and a save game file that demonstrates the issue.
Always mention the exact version of FreeOrion you are testing.
When reporting an issue regarding the AI, if possible provide the relevant AI log file and a save game file that demonstrates the issue.
Specials and Monsters frequency
When I start a game with Special High, I get specials on most planets, many times more than one (so you can get 4-6 specials in a system with three planets), and I bump into derelict scouts at almost every system. I think that is excessive. Something similar happens with monsters. This thread has two points:
- Does people feel the same I do and would like High setting be less high?
- How can I predict chances of appearance of each special based on the galaxy setting and the spawnrate of each special?
We have this frequencies modifiers for specials at universe generation:
SPECIALS_FREQUENCY = {
fo.galaxySetupOption.none: 0,
fo.galaxySetupOption.low: .1,
fo.galaxySetupOption.medium: .3,
fo.galaxySetupOption.high: .8,
}
That is used in default/python/universe_generation/specials.py
I'm quite unsure of this, but I would say the spawnrate defined for each special in the FOCS files is not directly accessed in the python code for universe generation, so I don't know how the values in SPECIALS_FREQUENCY combine with the spawnrate of each special. Are they multiplied somewhere? Is the SPECIALS_FREQUENCY used to gate if there will be a special or not and then choose one based on the spawnrates?
- Does people feel the same I do and would like High setting be less high?
- How can I predict chances of appearance of each special based on the galaxy setting and the spawnrate of each special?
We have this frequencies modifiers for specials at universe generation:
SPECIALS_FREQUENCY = {
fo.galaxySetupOption.none: 0,
fo.galaxySetupOption.low: .1,
fo.galaxySetupOption.medium: .3,
fo.galaxySetupOption.high: .8,
}
That is used in default/python/universe_generation/specials.py
I'm quite unsure of this, but I would say the spawnrate defined for each special in the FOCS files is not directly accessed in the python code for universe generation, so I don't know how the values in SPECIALS_FREQUENCY combine with the spawnrate of each special. Are they multiplied somewhere? Is the SPECIALS_FREQUENCY used to gate if there will be a special or not and then choose one based on the spawnrates?
Re: Specials and Monsters frequency
Look at the place_special function in the specials.py module of the universe generation scripts. There the spawn rate of the specials is used to determine which special to place.
Re: Specials and Monsters frequency
Thank you, Vezzra.
So I'd suggest using
I think that would still allow for lots of specials at High. If I generally find one or two computronium moons at less than 10 hops from my HW, reducing probability from 0.8 to 0.4 should still give a good chance of finding one computronium moon soon on most games. For medium, from 0.3 to 0.2 should not be too much of a difference. Anyways I'll playtest it.
Does anyone like the current saturation of specials you get with High and want to keep it?
So I'd suggest using
Code: Select all
SPECIALS_FREQUENCY = {
fo.galaxySetupOption.none: 0,
fo.galaxySetupOption.low: .1,
fo.galaxySetupOption.medium: .2,
fo.galaxySetupOption.high: .4,
}
Does anyone like the current saturation of specials you get with High and want to keep it?
Re: Specials and Monsters frequency
Can we look at low too? Is less then .1 possible? I'd like to have a very low option and I think Magnate might of mentioned wanting less then low too. I'd like something thats between none and where low is currently for monsters, natives and specials.
Re: Specials and Monsters frequency
Thanks Wobbly, i would indeed love to see low down at 0.05 or 0.02, especially for monsters.
Are those low/medium/high numbers specific to specials, or are they also used for monsters and starlanes and other settings? IMO it would be better to have different values for different settings options.
Also, please can we revisit the connection between monsters and certain specials. Apart from Acirema guard ships, are there any other specials that generate monsters? Kraken nest, I guess?
My point here is that when a new player creates a game with monsters set to None, s/he doesn't expect to see any monsters. So we should make sure this overrides any specific monster generation that is associated with specials. I'm ok with distinguishing between guard ships and monsters, if we want to keep guard ships.
And yes I'm totally fine with halving High - I agree with Oberlus that High causes an over proliferation of specials.
Are those low/medium/high numbers specific to specials, or are they also used for monsters and starlanes and other settings? IMO it would be better to have different values for different settings options.
Also, please can we revisit the connection between monsters and certain specials. Apart from Acirema guard ships, are there any other specials that generate monsters? Kraken nest, I guess?
My point here is that when a new player creates a game with monsters set to None, s/he doesn't expect to see any monsters. So we should make sure this overrides any specific monster generation that is associated with specials. I'm ok with distinguishing between guard ships and monsters, if we want to keep guard ships.
And yes I'm totally fine with halving High - I agree with Oberlus that High causes an over proliferation of specials.
Re: Specials and Monsters frequency
Yes. Each setting has its own values.
Every special has a chance to be guarded by a space monster or by ancient guardian species, if monsters are not set to None.
But that part of the game needs some love anyway. Some specials are not properly guarded (too big or weak), the biggest monster is not being used right now (my fault)...
Thanks for the feedback. Yes, low can be lower than 0.1, I'll play with that too.
Re: Specials and Monsters frequency
I never play with monsters or specials high because medium means already a lot of them. In my recent game I play with monsters medium and specials medium. I spotted a system with two kraken nests. I was very quick building outposts on every nest I reached but one AI has to fight several big juggernauts. So I would say halving high and reducing medium would still be fine.
All my games with low monsters, I mostly didn't have any nest in galaxy. That's why I would leave that or maybe raise it slightly and introduce something like "very low".
With specials it's the same. Even with medium I have some planets with two specials. It won't hurt if it's slightly less.
All my games with low monsters, I mostly didn't have any nest in galaxy. That's why I would leave that or maybe raise it slightly and introduce something like "very low".
With specials it's the same. Even with medium I have some planets with two specials. It won't hurt if it's slightly less.
Want some fresh experience? Try Kosymod
Re: Specials and Monsters frequency
You're welcome
Sounds reasonable.So I'd suggest usingCode: Select all
SPECIALS_FREQUENCY = { fo.galaxySetupOption.none: 0, fo.galaxySetupOption.low: .1, fo.galaxySetupOption.medium: .2, fo.galaxySetupOption.high: .4, }
Re: Specials and Monsters frequency
I tried to play with "High" and indeed there were too much specials to make them anyhow special at all and after that I switched to Medium (and when playtesting I play with Random everything).
So diminishing their abundance is probably a good idea (as long as there is still a "very high" option, for those who would like their Galaxy full).
Halving it may be a bit extreme, as it means the Specials would have an abundance only 25% over what "Medium" has right now, which can be an interesting game experience but not "High" Special presence.
I'd suggest
I mean, if someone finds that there are too many in Medium, they can play with Low, can't they ?
AFAIK having more options doesn't have any drawback ?
Note also that (if I understand Vezzra's explanation) the more Specials we add (a lot of them were suggested, some quite interesting imho¹) the lesser the probability that a specific Special will appear, so keeping the options of having quite high level of Specials in the Galaxy is probably a good idea.
And having two Computronium Moons doesn't say anything about the situation they're in - a CM in the same system than a Lembala'lam planet can be a tough cookie to crack, and having another one to choose instead can be interesting if a player likes to have choices.
On a side note, is there any reason for the Kraken in the Ice to have a spawn limit of 1 ? Not having the Galaxy full of them I can understand, but only one in the whole Galaxy seems way too low (and quite unfair for the players too far from it).
Also, am I mistaken that its Not WithinStarlaneJumps jumps has been recently lowered to 2 from an initially much higher value ?
¹ On the opposite, I really don't understand what the Stealth-giving Monsters bring to the gameplay ?
I get the idea of diversifying the Galaxy which is always good, but the way they do it seems broken/boring to me (totally random, no real way to meaningfully act on it - it's possible to gate them in your own Empire but that's mostly it).
So diminishing their abundance is probably a good idea (as long as there is still a "very high" option, for those who would like their Galaxy full).
Halving it may be a bit extreme, as it means the Specials would have an abundance only 25% over what "Medium" has right now, which can be an interesting game experience but not "High" Special presence.
I'd suggest
Code: Select all
SPECIALS_FREQUENCY = {
fo.galaxySetupOption.none: 0,
fo.galaxySetupOption.verylow: .03,
fo.galaxySetupOption.low: .1,
fo.galaxySetupOption.medium: .3,
fo.galaxySetupOption.high: .6
fo.galaxySetupOption.veryhigh: .9,
}
AFAIK having more options doesn't have any drawback ?
Note also that (if I understand Vezzra's explanation) the more Specials we add (a lot of them were suggested, some quite interesting imho¹) the lesser the probability that a specific Special will appear, so keeping the options of having quite high level of Specials in the Galaxy is probably a good idea.
And having two Computronium Moons doesn't say anything about the situation they're in - a CM in the same system than a Lembala'lam planet can be a tough cookie to crack, and having another one to choose instead can be interesting if a player likes to have choices.
On a side note, is there any reason for the Kraken in the Ice to have a spawn limit of 1 ? Not having the Galaxy full of them I can understand, but only one in the whole Galaxy seems way too low (and quite unfair for the players too far from it).
Also, am I mistaken that its Not WithinStarlaneJumps jumps has been recently lowered to 2 from an initially much higher value ?
Care to explain a bit more how there can be two Specials on the same Planet then ? I don't think that I ever saw three Specials on the same planet, is that a question of very low probability that it would occur or does a rule forbid it ?
¹ On the opposite, I really don't understand what the Stealth-giving Monsters bring to the gameplay ?
I get the idea of diversifying the Galaxy which is always good, but the way they do it seems broken/boring to me (totally random, no real way to meaningfully act on it - it's possible to gate them in your own Empire but that's mostly it).
Re: Specials and Monsters frequency
This is what went into master:
https://github.com/freeorion/freeorion/ ... 2b7c76b562
There was no addition of new options.
I didn't reduce Low much because 0.05 made it really hard to get just one growth special for each metabolism in 150 systems.
https://github.com/freeorion/freeorion/ ... 2b7c76b562
There was no addition of new options.
I didn't reduce Low much because 0.05 made it really hard to get just one growth special for each metabolism in 150 systems.
Re: Specials and Monsters frequency
There is an extra step in specials placement where for each planet that gets a special the number of additional specials to place there is decided.
However, the probabilities for more than one special are very low. There can be up to 4. Looking at the current Python code they are computed as follows (if I understand the code correctly):
- If a planet has one special, there is an 8% chance for a second one
- If a planet has successfully rolled for a second special, there is a 5% chance of getting a third one
- If a planet has successfully rolled for a third special, there is a 1% chance fora fourth one
Link to the relevant code section:
https://github.com/freeorion/freeorion/ ... als.py#L10
Re: Specials and Monsters frequency
Did I read that wrong or did you just *increase* the frequency of monsters on all three settings??Oberlus wrote: ↑Thu Nov 05, 2020 7:21 am This is what went into master:
https://github.com/freeorion/freeorion/ ... 2b7c76b562
There was no addition of new options.
I didn't reduce Low much because 0.05 made it really hard to get just one growth special for each metabolism in 150 systems.
Re: Specials and Monsters frequency
Yes. It's hard to get monster nests otherwise.
With less specials (which were the source of so many maintenance ships and that kind of monsters in our games) there is considerable less overall monsters when setting both to low.