Stellaris

Stellaris

Stellaris Dashboard
FebHare Oct 15, 2018 @ 5:35am
Compatibility issue with "Planetary Diversity" mod
As I said, I've face compatibility problem with other mod. It caused abort when savedata reading.

1. Is there any error message?
Yes, the error message output when the dashboard processes savedata.
Errorlog says,
"File "c:\users\user\documents\paradox interactive\stellaris-dashboard-0.2.0\src\stellarisdashboard\timeline.py", line 1163, in _history_add_or_update_ruler
most_recent_ruler_event.system = capital.system
AttributeError: 'NoneType' object has no attribute 'system'"

My debugging:
Some countries fail to get their "capital" by them capital_id at line 1113, in _history_add_ruler_events function. And their capital planets have non-vanilla planet class (from Planetary Diversity mod). If 'capital' is None, it doesn't have 'system' attribute.
Other capital planets with vanilla planet class are fine.


2. Which mods are you using?
Many, include homebrew ones. But I think Planetary Diversity mod is conflicting.

Planetary Diversity
https://steamcommunity.com/sharedfiles/filedetails/?id=819148835

It has a number of additional planet classes. A few of them are commom as a capital planet.


3. What is your proposed solution?
Editing game_info.py, to add PD planet classes.
It works now (2018/10/15), but PD might add new planet classes in future.

I inserted below list at line 275.

COLONIZABLE_PLANET_CLASSES_PD_PLANETS = {
"pc_antarctic",
"pc_deadcity",
"pc_retinal",
"pc_irradiated_terrestrial",
"pc_lush",
"pc_geocrystalline",
"pc_marginal",
"pc_irradiated_marginal",
"pc_marginal_cold",
"pc_crystal",
"pc_floating",
"pc_graveyard",
"pc_mushroom",
"pc_city",
"pc_archive",
"pc_biolumen",
"pc_technoorganic",
"pc_tidallylocked",
"pc_glacial",
"pc_frozen_desert",
"pc_steppe",
"pc_hadesert",
"pc_boreal",
"pc_sandsea",
"pc_subarctic",
"pc_geothermal",
"pc_cascadian",
"pc_swamp",
"pc_mangrove",
"pc_desertislands",
"pc_mesa",
"pc_oasis",
"pc_hajungle",
"pc_methane",
"pc_ammonia",
}


And change COLONIZABLE_PLANET_CLASSES constant.
(before)
COLONIZABLE_PLANET_CLASSES = COLONIZABLE_PLANET_CLASSES_PLANETS | COLONIZABLE_PLANET_CLASSES_MEGA_STRUCTURES
(after)
COLONIZABLE_PLANET_CLASSES = COLONIZABLE_PLANET_CLASSES_PLANETS | COLONIZABLE_PLANET_CLASSES_MEGA_STRUCTURES | COLONIZABLE_PLANET_CLASSES_PD_PLANETS
< >
Showing 1-4 of 4 comments
blubblubblobb  [developer] Oct 18, 2018 @ 6:58am 
Hi FebHare,

thanks for the detailed information and code suggestion!

It looks good to me, I'm a bit busy at the moment but will probably make the change sometime this weekend.

Cheers!
blubblubblobb  [developer] Nov 10, 2018 @ 9:01am 
Ok, I added your suggestion to the code :)
Should be in the next release.
FebHare Nov 16, 2018 @ 11:33pm 
Thank you!
FebHare Apr 13, 2019 @ 8:07am 
It's been a while since.
Planetary Diversity was updated and some planet class is added and some is changed. So I think "COLONIZABLE_PLANET_CLASSES_PD_PLANETS " should be updated also.
I use;

COLONIZABLE_PLANET_CLASSES_PD_PLANETS = {
#PD arcology
"pc_ecocity",
#special planets
"pc_superhabitable",
"pc_tidallylocked",
"pc_geothermal",
"pc_methane",
"pc_ammonia",
#standard planets
"pc_prairie",
"pc_glacial",
"pc_frozen_desert",
"pc_steppe",
"pc_hadesert",
"pc_boreal",
"pc_sandsea",
"pc_subarctic",
"pc_cascadian",
"pc_swamp",
"pc_mangrove",
"pc_desertislands",
"pc_mesa",
"pc_oasis",
"pc_hajungle",
"pc_mushroom",
"pc_biolumen",
#Unique World Dummies
"pc_crystal",
"pc_floating",
"pc_graveyard",
"pc_technoorganic",
"pc_archive",
}

And "pc_city" is used in vanilla now, as Ecumenopolis world. So it should be included to "COLONIZABLE_PLANET_CLASSES_PLANETS".
< >
Showing 1-4 of 4 comments
Per page: 1530 50