Stellaris

Stellaris

148 ratings
Pre-FTL Conquest & Infiltration: Enhanced
   
Award
Favorite
Favorited
Unfavorite
File Size
Posted
Updated
334.660 KB
15 May, 2021 @ 11:22am
23 Jun, 2023 @ 5:40pm
23 Change Notes ( view )

Subscribe to download
Pre-FTL Conquest & Infiltration: Enhanced

In 1 collection by corsairmarks
Corsair's Stellaris Mods
57 items
Description
Overview
In default (unmodded) Stellaris, when a player conquers a pre-FTL planet (or ringworld segment), he/she is given free districts based on the number of Pops conquered. The city districts are the wrong type for machine and hive empires, and players receive farming districts on worlds that previously housed a lithoid pre-FTL civilization. Despite many changes in 3.7 "Canis Minor" for infiltrated and enlightened pre-FTLs, most pre-FTLs still do not receive districts based on what food they consume. The AI does not receive any bonus districts or buildings except for pre-FTL enlightenment.

It's my opinion that these free districts represent repurposing existing infrastructure for the conqueror's use. To that end, this mod gives the proper type of city, nexus, or hive districts as appropriate for the conquering empire type. Second, planets (or ringworld segments) inhabited by lithoid civilizations receive mining districts as opposed to farming districts. Rogue servitors get organic sanctuaries instead of some of the nexus districts, because preserving some developed areas allows bio-trophies to live in their "natural habitat." Finally, the AI benefits from these free districts in order to even the playing field.

A Bit More Detail
This mod started as a response to four very specific, small areas:
  1. When conquering pre-FTL planets, human players get free districts to employ about half the population, but the AI does not
  2. Machine Empires and Hive Empires are given city districts instead of the appropriate nexus or hive districts
  3. When conquering a lithoid pre-FTL planet, the player is given farming districts, which lithoids don't need
  4. Necrophage AI players have a special helper event to gain control of pre-FTLs, but it is not actually conquest and thus misses out on some things
To address these issues, this mod re-implements (for both players and AIs) free districts upon acquiring a pre-FTL planet. The improved "pre-FTL transfer" code generates the appropriate housing/urban districts based on the conquering empire (including some organic sanctuaries for Rogue Servitors). Mining districts are generated instead of farming districts if the conquered pre-FTL species is lithoid. The aforementioned pre-FTL transfer is used by the Necrophage AI helper event, pre-FTL infiltration, and any other code that causes a previously-pre-FTL planet to transfer ownership to a space-faring empire.

The districts available on shattered ring world "planets" better match the level of development pre-FTLs can achieve, so pre-FTL ringworlds are now converted to shattered ringworlds upon conquest/infiltration/etc. Don't forget that the Sanctuary ringworld is stocked with four pre-FTL empires ripe for conquest enlightenment.

Changes
This mod replaces six events from the base game: action.14, action.140, and necroids.6. The action events are responsible for the standard military conquest of pre-FTLs, the necroids event is responsible for AI necrophage auto-conquest, the observation event is responsible for pre-FTL infiltration, and the pre-FTL events are related to technological enlightenment. These events are altered to no longer invoke code for generating buildings and districts.

These events and effect are altered to no longer invoke their own code for generating buildings and districts. Instead custom logic is implemented via the new event primitive_conquest_enhancements.1 that fires when planet ownership changes from a pre-FTL empire to a space-faring empire, and a series of custom effects.

Localisation
Compatibility
You do not need the Necroids, Lithoids, or First Contact content packs to use this mod.

This mod should be widely compatible with other mods. Incompatibilities would only occur if other mods also overwrite the same events or effects. If another mod is attempting to make changes to pre-FTL planet conquest but uses a different method (for example, adding new events activated by on action events such as on_planet_transfer, on_planet_conquer, or on_planet_attackers_win) the end result could be extra districts or other nonsensical behavior after both mods apply their effects.

Built for Stellaris version 3.8 "Gemini." Not compatible with achievements. Has built-in support for Planetary Diversity.

When to Install
This mod can be safely added or removed from your savegame after the game has started. It is implemented entirely through events, on actions, and effects. If you remove it, your game will work normally.

Known Issues
Overriding an effect or event causes the game to log errors noting the overrides. Expect to see five lines in the error.log file like these:
[00:32:45][game_singleobjectdatabase.h:165]: Object with key: infiltrate_government_annexation_effect already exists, using the one at file: common/scripted_effects/zz_primitive_conquest_enhancements_first_contact_dlc_scripted_effect_overrides.txt line: 3 [00:32:45][game_singleobjectdatabase.h:165]: Object with key: set_species_graphical_culture already exists, using the one at file: common/scripted_effects/zz_primitive_conquest_enhancements_pre_ftl_scripted_effects.txt line: 2 [00:32:51][eventmanager.cpp:369]: an event with id [necroids.6] already exists! file: events/necroids_events_1.txt line: 592 [00:32:51][eventmanager.cpp:369]: an event with id [action.14] already exists! file: events/on_action_events_1.txt line: 3720 [00:32:51][eventmanager.cpp:369]: an event with id [action.140] already exists! file: events/on_action_events_1.txt line: 3786

Changelog
See Change Notes

Source Code
Hosted on Github[github.com]

[discord.gg]
17 Comments
Fisicosaurio 2 Dec, 2023 @ 10:33am 
Hello there! Are you updating it soon?
corsairmarks  [author] 26 Mar, 2023 @ 11:49pm 
Turns out this mod is still useful - PDX did not alter building generation for conquered or infiltrated primitives. The main change is when enlightening primitives - the code for which has been removed from this mod.

The updated version was released on March 19.
corsairmarks  [author] 3 Mar, 2023 @ 8:57pm 
Hello fellow primitive civilization enthusiasts! With the imminent release of Stellaris: First Contact Story Pack on March 14th, I want to remind all subscribers:

This mod is practically guaranteed to be broken by the (expected) significant changes to the process of interacting with primitives. Once the expansion launches, I will be evaluating the changes and then determine whether this mod is still necessary in some form.
Pollution 5 Jan, 2023 @ 5:11am 
@corsairmarks That did it. Found a 10 sized primitive (don't remember the age) and it replaced with an Organic Sanctuary. VERY nice, thank you!
corsairmarks  [author] 4 Jan, 2023 @ 1:48pm 
@Pollution looks like the game no longer removed the primitive buildings before my code fired. That meant when my code went to try and add Organic Sanctuaries, it saw -5 buildings as available (I tested with Atomic Age primitives). I've added code to explicitly clear buildings and construct a capital building before the rest of the construction code fires.

It's behaving correctly again on my end. Give it a try by conquering some more primitives and you will get the expected sanctuaries.
corsairmarks  [author] 4 Jan, 2023 @ 12:04pm 
@Pollution you are right, I get the same results on my computer. I'll see why it's not firing the expected code for Rogue Servitors.
Pollution 4 Jan, 2023 @ 10:45am 
Not working at the moment. Played with RS, conquered a primitive planet with 9 pops, no Organic Sanctuaries were placed. Tried a 20-something pop primitive planet, same thing. All buildings are destroyed, looks like vanilla.

Tried again putting this mod to load at the top under Playsets, and again, a size 9 primitive planet ended up the same as vanilla.
corsairmarks  [author] 18 Dec, 2022 @ 11:55pm 
Up-to-date for 3.6 "Orion" - I was able to remove a lot of no-longer-needed code.

@Silver Knight there were only two significant updates - 3.5 and 3.6 - happened since I last updated.
💖⎛⎝Silver Knight⎠⎞ 4 Oct, 2022 @ 3:15am 
3 updates later...
kinngrimm 2 Jun, 2022 @ 6:50am 
I just started a game with maxed out primitivs and few but tough regular AIs, i am looking forward to seeing this mod play out in my game, thanks.