Pre-FTL Conquest & Infiltration: Enhanced

If you liked this item, please rate it up on Steam Workshop page.

Author: corsairmarks

Last revision: 24 Jun, 2023 at 00:40 UTC (6)

File size: 326.66 KB

On Steam Workshop

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]