Changes

Jump to navigation Jump to search

Modding

8,454 bytes added, 2 months ago
Common folder: +FIOS for Solar System Initializers!?
'''Modding''', or creating [[mods]], is the act of modifying the behavior of the base game (often referred to as ''vanilla''), either for personal use, or to release publicly to other players, for instance via the [[Steam Workshop]].
As for with all Paradox games, [[Stellaris]] is moddable to a great extent. Motivations of modders may vary widely; better translation to native language, more events or decisions, better map, major overhaul, shameless cheating, etc.
This guide is intended to lower the entry barriers to the world of Stellaris modding. However, there is still a learning curve to it, and it cannot replace the need to read some working vanilla code, and do lots of trial and error experimentation!
<div style="float: right;" class="mw-collapsible">{{ModdingNavbox}}</div>
__TOC__
{{Template:ModdingNavbox}}== Guidelines ==
==Guidelines== *'''Create a mod for your modifications''': use a [[#Mod_structureMod structure|personal mod]] even for small changes, and never directly modify the game files in the Steam Stellaris folder, as they may be overwritten without warning.*'''Use a good text editor''' (recommended: [https://code.visualstudio.com / Visual Studio Code]) to edit files and search into multiple files. A good text editor can also format the displayed text so that braces can be collapsed if complete, and complete/incomplete pairs are highlighted.
*'''Use the Error.log file to get execution errors''': The log folder can be found right next to the mod folder. Good Editors usually have the ability to track changes to files from outside the program and prompt for a reload, thus showing you errors with one glance at the file. Note that some modifications need a game to be loaded or even the option to be used on screen/in the back-end before their code will run.
*'''Use CWTools for advanced validation and auto-complete''': CWTools is a syntax validator for Stellaris modding, developed as an extension for Visual Studio Code and also available for Sublime. Read the [https://forum.paradoxplaza.com/forum/index.php?threads/tool-cwtools-a-mod-validating-extension-for-vs-code.1066033/ forum post] by the developer for more info.
*'''Minimize overwrites of vanilla files''', unless that is your main goal or somehow necessary (on_action triggers). Adding separate files and use [[#Game structure|loading from folders]] whenever possible, to improve mod compatibility and maintenance. Your files can have any name, all files in the folder will be loaded by the game. So choose a prefix no one else will ever use like the name of your mod. Even DLC follows that pattern.
*'''Use a proper merge tool''' (like [http://winmerge.org/ WinMerge], or the Visual Studio Code Extension [https://marketplace.visualstudio.com/items?itemName=L13RARY.l13-diff L13 Diff] ), to [[Merging guide|merge between folders]], and update modified vanilla files to a new vanilla patch.
*'''Backup your work''' to avoid losing everything. Consider using a source control system like [https://git-scm.com/ Git] and a collaborative forge like [https://github.com/ GitHub] to manage team collaboration.
*'''Use UTF-8 encoding''' for text and .mod files.*'''Use UTF-8 with BOM''' for localization, and name list, and .mod files.
*'''Indent properly''' and, again, use a good text editor, to easily spot unclosed curly braces. Vanilla uses 1 tab for indentation rather than spaces.
*'''Use comments''' starting with a # character, to remember your reasons for writing tricky stuff.
==Mod management== 
The first steps of modding is getting to know where the mods are located, how they're structured and what to do when uploading your first mod!
===Mod folder location=== 
{| class="wikitable"
| '''! OS''' || '''!! Path'''
|-
| Linux || <code>~/.local/share/Paradox Interactive/Stellaris/mod</code>
|-
| Windows || <code>C:\Users\<Username>\Documents\Paradox Interactive\Stellaris\mod</code>
|-
| Mac OS ||<code>~/Documents/Paradox Interactive/Stellaris/mod</code>
|}
Mods from the Steam Workshop will be placed in <code>...\SteamLibrary\SteamApps\workshop\content\281990</code>, sorted by their Workshop ID.<br>
Mods from Paradox Mods will be placed in the mod folder location, named <code>PDX_*MOD_ID*</code>.
===File and folder structure=== 
Getting the structure set up correctly when creating a mod is essential for it to run properly.
This is the required structure inside the main mod folder:
* <code>modname.mod</code> - Includes the information used by the Stellaris launcher* <code>modname</code> - Folder where all the modified files are placed, in the same [[#Game structure|file and folder structure]] as the game folder
** Mod contents
** <code>descriptor.mod</code> - Required for the [[Patch_2Patch 2.4|new launcher]] added in patch 2.4. Ignored in the old launcher.** <code>thumbnailimage.pngext</code> - Must – PNG and JPEG files are supported. With the new 2.4 launcher, must be a PNG named <code>thumbnail, only PNG files supported.png</code>
<code>modname.mod</code> and <code>descriptor.mod</code> both contain the mod information that the launcher uses when displaying the mod and uploading it.<br>
These files are best kept identical The 2.4 launcher prefers <code>descriptor.mod</code> and will modify <code>modname.mod</code> to prevent any missing datamatch the information in <code>descriptor.mod</code>, however if the file is not found, though it'll use the information in <code>modname.mod</code>. The pre-2.4 launcher ignores it.<br>The <code>path="XXX"</code> is not needed in descriptor.mod.<br>
Note that folder and file names are case sensitive on Mac OS X and Linux.
 
'''modname.mod structure'''<br>
| <code>path</code>
| modname.mod: '''Yes'''<br>descriptor.mod: '''No''' (Ignored)
| Defines which folder is the mod's folder. It is relative to ''...\Documents\Paradox Interactive\Stellaris\'' folder.
| <code>path="mod/MyStellarisMod"</code>
|-
| No
| Specifies if the mod should be loaded after the listed mod(s), if they exist.<br>Very useful for submods or compatibility patches to make sure they overrule certain mods.
| <pre>dependencies={
"My Other Stellaris Mod"
"Not My Stellaris Mod"
}</pre>
|-
| <code>picture<code>
| <code>tags</code>
| No
| List of tags for [[Steam Workshop]]. Using tags besides the predefined ones may prevent uploading on Paradox Mods.<br>Warning: don't forget quotes for tags that contain spaces.| <pre>tags={
"Tag1"
"Tag2"
}</pre>
|-
| <code>supported_version</code>
| <code>remote_file_id="1234567890"</code>
|}
The data structure is like similar to the proprietary Valve Data Format.<ref>VDF is a ad-hoc file format designed by Valve to support storage of hierarchical data.</ref> (VDF , which is also used by [https://developer.valvesoftware.com/wiki/SDK_Installation Steam]).<ref>There are several open Open VDF parser available: https://github.com/rossengeorgiev/vdf-parser/, [https://github.com/shravan2x/Gameloop.Vdf for .NET]</ref>
'''Example modname.mod file:'''<br><pre>name="Somemod"
path="mod/somemod"
dependencies={
picture="thumbnail.png"
remote_file_id="1234567890"
supported_version="2.4.*"</pre> === Adding a thumbnail ===
===Adding a thumbnail===
The Steam Workshop allows for a preview thumbnail picture that'll be displayed when searching for mods and as a preview picture if you haven't uploaded any, otherwise it'll be placed to the right of the preview pictures.<br>
It's recommended to make the thumbnail 512px × 512px at minimum, which is used by the workshop frontpage.<br>
Additionally, the thumbnail file should be under '''1 &nbsp;MB''' in size, otherwise, it will not be uploaded.<br>Both JPEG and PNG are supported, and after 2.4, the image file must be named '''thumbnail'''and be of type PNG.
# Make sure the Stellaris launcher is closed, so that it doesn't revert your changes
# Open up <code>modname.mod</code> and <code>descriptor.mod</code> files
# Make sure <code>picture="thumbnail.jpgpng"</code> exists, if not, add it
# Add your image file in your mod folder
# Start up the launcher and update your mod
You can always update the thumbnail at any time by updating the mod.
===Creating a mod=== 
You can use the game launcher to set up a the mod structure for you by following these simple steps according to your launcher of choice:
{| style="text-align:center;" class="wikitable"
|5||colspan="2"| Insert the relevant information and click '''Create Mod''' at the bottom
|-
|6||colspan="2"| Navigate to the [[#Mod_folder_locationMod folder location|mod folder]] and locate your mod folder
|-
|7||colspan="2"| Start modding!
|}
===Uploading and updating a mod=== 
Uploading and updating a mod follows the the same procedure, depending on your launcher of choice:
{| style="text-align:center;" class="wikitable"
|10||colspan="2"|Navigate to the mod service of choice and locate your mod;<br>'''Steam Workshop''', visit the [https://steamcommunity.com/app/281990/workshop/ Workshop] page, and locate the "Files you've posted" button by hovering over "Your Files" on the right<br>'''Paradox Mods''', visit the [https://mods.paradoxplaza.com/ Mods] page, login, and click "My uploaded mods" in the dropdown menu that appears when hovering over your name
|-
|+ style="caption-side:bottom;font-size:small;"|* - The inserted description will replace the current one used on the mod page!
|}
==Game data== 
* [[Console commands]], useful for debugging mods.
* [[Defines]], which allows you to influence some hardcoded vanilla behaviors
* [[Map]], used for pre-generated galaxy maps
==Game structure==
Below is a list of game files and folders, listed alongside the modding guide for each.
==== Stellaris/common/ ====
 {| class = "wikitable"
!Folder/File
!Summary
!Guides
|-
| agendas
| Agendas are given to leader-candidates in Oligarchic government-forms
| [[Agenda modding|Agendas]]
|-
| ai_budget
| Determine how AI should handle resources.
| [[AI modding|AI]]
|-
| ambient_objects
| References used by code to spawn ambient objects
| [[Model modding|Models]]
|-
| archaeological_site_types
| Definitions for Archaeological Sites to be discovered and delved by Science Ships.
| [[Ancestral Relics modding|Ancestral Relics]]
|-
| anomalies
| [[Army modding|Armies]]
|-
| <del>army_attachments</del> ''(Deprecated)''|||-| artifact_actions| Definitions for Artifact Actions.| [[Ancestral Relics modding|Ancestral Relics]]|-| ascension_perks| Definitions for attachments that can be added to armiesAscension Perks.| [[Army Tradition modding|ArmiesTraditions]]
|-
| attitudes
| [[AI modding|AI]]
|-
| buildable_popsbombardment_stances| Definitions for buildable pops. i.eof bombardment stances. Robots| [[Pops Bombardment Stance modding|PopsBombardment Stances]]|-| <del>buildable_pops</del> ''(Deprecated)''||
|-
| buildings
| Setup for buildings constructable on planets, and those given through events
| [[Building modding|Buildings]]
|-
| button_effects
| Definitions for button effects.
| [[Graphics modding|Graphics]]
|-
| bypass
| Definitions for bypasses (gateway, worm hole and l-gate)
| [[Bypass modding|Bypasses]]
|-
| casus_belli
| Definitions for casus belli.
| [[War modding|Wars]]
|-
| colony_automation
| Definitions for colony autobuild types.
| [[Colony Automation modding|Colony Automations]]
|-
| colony_automation_exceptions
| Definitions for colony autobuild types.
| [[Colony Automation modding|Colony Automations]]
|-
| colors
| [[Country modding|Countries]]
|-
| <del>component_flags</del> ''(Deprecated)''| List of flags used by the AI for selecting components| [[Ship modding|Ships]]
|-
| component_sets
| List of the sets of components used by ships
| [[Ship modding|Ships]]
|-
| component_slot_templates
| Slot templates to be used with ship sections.
| [[Ship modding|Ships]]
|-
| [[Country modding|Countries]]
|-
| decisions| Definitions for planetary decisions.| [[Decision modding|Decisions]]|-| defines | Basic game behaviors and settings |[[Defines]]|-| deposit_categories| Deposit categories relevant to deposit generation.| [[Planet Generation modding|Planet Generation]]
|-
| deposits
| Setup for the deposits of resources found on planetsas well as blockers spawned on habitable planets.| [[Planet Generation modding|PlanetsPlanet Generation]]
|-
| diplo_phrases
| Setup for the logic behind the diplomatic phrases used between countries.
| [[AI modding|AI]]
|-
| diplomacy_economy
| Economy units based on diplomacy. Diplomatic upkeeps like influence upkeep of Federations are defined here.
| [[Diplomacy modding|Diplomacy]]
|-
| diplomatic_actions
| Setup for the rules for diplomatic actions.
| [[Gameplay Diplomacy modding|GameplayDiplomacy]]|-| districts| Definitions for districts.| [[Building modding|Buildings]]|-| economic_categories| Definitions for economic categories.| [[Economy modding|Economy]]|-| economic_plans| Definitions for AI economy plans.| [[AI modding|AI]]
|-
| edicts
| Setup for the edicts used by planets and countries.
| [[Edicts modding|Edicts]]
|-
| Sets up the countries and system initializer used for fallen empires
| [[System modding|Systems]]
|-
| federation_law_categories
| Definitions for federation law categories.
| [[Diplomacy modding|Diplomacy]]
|-
| federation_laws
| Definitions for federation laws.
| [[Diplomacy modding|Diplomacy]]
|-
| federation_perks
| Definitions for federation perks.
| [[Diplomacy modding|Diplomacy]]
|-
| federation_types
| Definitions for federation types.
| [[Diplomacy modding|Diplomacy]]
|-
| galactic_focuses
| Definitions for galactic focuses relevant to the Galactic Community.
| [[Diplomacy modding|Diplomacy]]
|-
| game_rules
| Controls the lighting used for ships, which differs between graphical cultures.
| [[Species modding|Species]]
|-
| lawsuits
| Unused.
|
|-
| leader_classes
| Definitions for leader classes.
| [[Leader modding|Leaders]]
|-
| mandates
| Controls the mandates used by factions
| [[Mandate modding|Mandates]]
|-
| map_modes
| Definitions for map modes to be used in the galaxy view.
| [[Map Mode modding|Map Modes]]
|-
| megastructures
| Definations for megastructures.
| [[Megastructure modding|Megastructures]]
|-
| name_lists
| Sets up the names used for each species.
| [[Species modding|Species]]
|-
| notification_modifiers
| A variation of static modifiers. They have no modifiers and can only be added to empires.
| [[Modifiers#Static Modifiers|Static Modifiers]]
|-
| observation_station_missions
| planet_modifiers
| Spawn chances planet modifiers (f.e. lush, hazardous weather, etc.).
| [[Planet Generation modding|PlanetsPlanet Generation]]
|-
| policies
| AI Policy grabbing (What order they take policies in)
| [[Policies modding|Policies]]
|-
| pop_categories
| Definitions for pop categories (social strata).
| [[Pop Job modding|Pop Jobs]]
|-
| pop_faction_types
| Population faction types and personalities| [[Pops Pop Faction modding|PopsPop Factions]]|-| pop_jobs| Definitions for pop jobs.| [[Pop Job modding|Pop Jobs]]
|-
| precursor_civilizations
| Lists of random names for Empires
| [[Gameplay modding|Gameplay]]
|-
| relics
| Definitions for Relics.
| [[Ancestral Relics modding|Ancestral Relics]]
|-
| resolution_categories
| Definitions for resolution categories relevant to the Galactic Community.
| [[Diplomacy modding|Diplomacy]]
|-
| resolutions
| Definitions for resolutions relevant to the Galactic Community.
| [[Diplomacy modding|Diplomacy]]
|-
| scripted_effects
| Events that give buffs or dePre-buffs (effects)defined blocks of [[Effects]] to be called elsewhere.| [[Dynamic modding|Dynamic]]|-| scripted_loc| Pre-defined methods to provide text based on the scoped object's attributes.| [[Gameplay Dynamic modding|GameplayDynamic]]
|-
| scripted_triggers
| Scripted events and how they triggerPre-defined blocks of [[Conditions]] to be called elsewhere.| [[Dynamic modding|Dynamic]]|-| scripted_variables| Pre-defined "@" variables to be called from other game files.| [[Gameplay Dynamic modding|GameplayDynamic]]
|-
| section_templates
| Different Ship AI and how it actsContainer of components that consist actual ships.
| [[Ship modding|Ship]]
|-
| sector_focuses
| Types of sectors and how they act.
| [[Colony Automation modding|Colony Automations]]
|-
| sector_types
| Types of sectors and how they act.
| [[Gameplay Colony Automation modding|GameplayColony Automations]]
|-
| ship_behaviours
| [[System modding|Systems]]
|-
| <del>spaceport_modules</del> ''(Deprecated)''| | [[Planet modding|Planets]]
|-
| special_projects
|
| [[Special Project modding|Special Projects]]
|-
| species_archetypes
| Definitions for species archetypes to give some shared attributes to species classes.
| [[Species modding|Species]]
|-
| species_classes
|Definitions for species classes that are sets of species portraits.| [[Species modding|Species]]|-| species_names| Definitions for species random names.| [[Species modding|Species]]|-| species_rights| Definitions for species rights.
| [[Species modding|Species]]
|-
| star_classes
| Types of solar systems (NOT individual stars themselves!)
| [[System modding|Systems]]
|-
| starbase_buildings
| Definitions for starbase buildings that each starbase can only have one of each of them.
| [[Starbase modding|Starbases]]
|-
| starbase_levels
| Definitions for starbase levels.
| [[Starbase modding|Starbases]]
|-
| starbase_modules
| Definitions for starbase modules.
| [[Starbase modding|Starbases]]
|-
| starbase_types
| Definitions for starbase types. To players, no effects, flavor only. To the AI, a starbase auto-build guide.
| [[Starbase modding|Starbases]]
|-
| start_screen_messages
|Messages that should be shown to the player at the start of the game.
| [[Gameplay modding|Gameplay]]
|-
| static_modifiers
|Blocks of [[Modifiers]] to be added to objects.| [[Gameplay moddingModifiers#Static Modifiers|GameplayStatic Modifiers]]
|-
| strategic_resources
|Definitions for resources, not just strategic resources.| [[Planet Economy modding|PlanetEconomy]]
|-
| subjects
|Definitions for subject types.| [[Gameplay Diplomacy modding|GameplayDiplomacy]]|-| system_types| Definitions for system types. No effects, flavor only.| [[Starbase modding|Starbases]]
|-
| technology
| Definitions for technologies.
| [[Technology modding|Technology]]
|-
| terraform | Definitions for terraform methods.| [[Planet modding|Planets]]|-| trade_conversions| Definitions for trade value conversions.| [[Economy modding|Economy]]|-| <del>tile_blockers</del> ''(Deprecated)''
|
| [[Planet modding|Planets]]
|-
| tile_blockers
|
|-| tradition_categories| Definitions for tradition groups.| [[Tradition modding|Traditions]]|-| traditions| Definitions for traditions.| [[Planet Tradition modding|PlanetsTraditions]]
|-
| traits
|Definitions for species traits and leader traits.
| [[Traits modding|Traits]]
|-
| <del>triggered_modifiers</del> ''(Deprecated)''|
|
| [[Gameplay modding|Gameplay]]
|-
| <del>war_demand_counters</del> ''(Deprecated)''|
|
| [[War modding|Wars]]
|-
| <del>war_demand_types</del> ''(Deprecated)''
|
|
|-
| war_goals
| Definitions for war goals.
| [[War modding|Wars]]
|-
| achievements.txt
| Definitions for achievements. Modding this file doesn't make sense, since achievements are disabled for any "common" changing/expanding mods anyway.
|
| None
|-
| alerts.txt
|
| [[Gameplay Message modding|GameplayMessages]]
|-
| message_types.txt
|
| [[Gameplay Message modding|GameplayMessages]]
|-
|}
==== Stellaris/events/ ====
 {| class = "wikitable"
!Folder/File
!Summary
| [[Event modding|Events]]
|}
 
==== Stellaris/flags/ ====
 {| class = "wikitable"
!Folder/File
!Summary
| [[Flag modding|Flags]]
|}
 
==== Stellaris/fonts/ ====
 {| class = "wikitable"
!File
!Summary
| [[Font modding|Fonts]]
|}
 
==== Stellaris/gfx/ ====
 {| class = "wikitable"
!Folder/File
!Summary
==== Stellaris/interface/ ====
 {| class = "wikitable"
!Folder
!Summary
==== Stellaris/localisation/ ====
 {| class = "wikitable"
!File
!Summary
!Guides
|-
| *l_simp_chinese.yml
| Contains Chinese localisation
| [[Localisation modding|Localisation]]
|-
| *l_english.yml
==== Stellaris/map/ ====
 {| class = "wikitable"
!Folder/File
!Summary
==== Stellaris/music/ ====
 {| class = "wikitable"
!Folder/File
!Summary
|-
| songs.txt
|
| [[Music modding|Music]]
|}
==== Stellaris/prescripted_countries/ ====
 {| class = "wikitable"
!Folder/File
!Summary
==== Stellaris/sound/ ====
 {| class = "wikitable"
!Folder/File
!Summary
|}
==Overwriting Specific Elements==
Occasionally, it is possible to overwrite a specific game element without needing to replace the entire vanilla file. In some cases adding a an element with a similar identifier into another file will duplicate that element for the game. But in other cases, the version that comes first (First In, Only Served; FIOS)/last (Last In, Only Served; LIOS) will be used instead. <ref>https://forum.paradoxplaza.com/forum/index.php?threads/object-types-that-can-be-replaced-in-separate-files.990537/</ref>. The order in which files are processed is based on ASCIIbetical order of the filenames. If the names are the same, they'll be processed based on the reverse-ASCIIbetical order of the mod display name, with vanilla always being first (if it's at the ''top'' of the mod list, it'll be loaded ''last''). Note that if there are multiple mods with the same display name, only the one whose mod file comes first, will be used.
Note that this feature is not documented and thus might be subject to arbitrary changes between versions.
{{SVersion|2.25}} ===Common Folderfolder === 
{{box wrapper}}
{| class ="mw-collapsible wikitable" style="float: left; margin-left: 10px;"|+ A-N (Agendas -– Notification<br/>Notification Modifiers)
|-
! File Type
! Overwrite<br/>Type
! Error Log
! Notes
| LIOS
| Object key already exists
|
|-
| AI Budget
| | |
|-
| Ambient Objects
| | |
|-
| Anomalies
| LIOS
| Object key already exists
|
|-
| Armies
| LIOS
| Object key already exists
||-| Artifact Actions| LIOS| Object key already exists|
|-
| Ascension Perks
| LIOS
| Object key already exists
|
|-
| Asteroid Belts
| | |
|-
| Attitudes
| LIOS
| Object key already exists
|
|-
| Bombardment Stances
| LIOS
| Object key already exists
|
|-
| Buildings
| LIOS
| Object key already exists
| Breaks auto-<br>generated modifiers
|-
| Button Effects
| | |
|-
| Bypass
| LIOS
| Object key already exists
|
|-
| Casus Belli
| LIOS
| Object key already exists
|
|-
| Colony Types
| LIOS
| Object key already exists
|
|-
| Colors
| | |
|-
| Component Sets
| FIOS
| Object key already exists
|
|-
| Component Tags
| | |
|-
| Component Templates
| FIOS
| Object key already exists
|
|-
| Country Customization
| | |
|-
| Country Types
| LIOS
| Object key already exists
|
|-
| Decisions
| LIOS
| Object key already exists
|
|-
| style="height: 90px" | Defines
| LIOS
| {{small|''[none]''}}
| The block the define is<br/>in must be included as well.<br/>E.g: ''NGameplay = {<br/>POLICY_YEARS = 10 }''
|-
| Deposit Categories
| | |
|-
| Deposits
| LIOS
| Object key already exists
|
|-
| Diplomatic Phrases
| | |
|-
| Diplomatic Economy
| LIOS
| Object key already exists
|
|-
| Diplomatic Actions
| LIOS
| Object key already exists
|
|-
| style="height: 43px45px" | Districts| Dupl (Last)LIOS
| Object key already exists
| Breaks maxauto-<br/>districts modifiergenerated modifiers
|-
| Economic Categories
| | |
|-
| Edicts
| LIOS
| Object key already exists
|
|-
| style="height: 43px45px" | Ethics
| LIOS
| {{small|''[none]''}}
| Might break "selected<br/>ethic" graphic
|-
| Event Chains
| FIOS
| {{small|''[none]''}}
|
|-
| Fallen Empires
| | |
|-
| Game Rules
| LIOS
| {{small|''[none]''}}
|
|-
| Global Ship Designs
| FIOS| A ship design already exists|
|-
| Governments
| LIOS
| Object key already exists
|
|-
| ├───Authorities
| LIOS
| Object key already exists
|
|-
| └───Civics
| LIOS
| Object key already exists
|
|-
| Graphical Culture
| | |
|-
| Leader Classes
| LIOS
| Object key already exists
|
|-
| Mandates
| LIOS
| Object key already exists
|
|-
| Map Modes
| LIOS
| Object key already exists
|
|-
| Megastructures
| LIOS
| Object key already exists
|
|-
| Name Lists
| | |
|-
| Notification Modifiers
| | |
|}
{| class ="mw-collapsible wikitable" style="float: left; margin-left: 10px;"|+ O-Z (Observation Station<br/>Missions - War Goals)
|-
! File Type
! Overwrite<br/>Type
! Error Log
! Notes
|-
| Observation Station Missions
| | |
|-
| style="height: 46px" | On Actions
| NO
| {{small|''[none]''}}
| Cannot modify<br/>existing entries
|-
| Opinion Modifiers
| DUPL/LIOS
| {{small|''[none]''}}
| <code>add_opinion_modifier</code> is LIOS
|-
| Personalities
| LIOS†LIOS
| Object key already exists
|
|-
| Planet Classes
| LIOS
| {{small|''[none]''}}
|
|-
| Planet Modifiers
| LIOS
| Object key already exists
|
|-
| Policies
| LIOS
| Object key already exists
|
|-
| Pop Categories
| LIOS
| Object key already exists
|
|-
| Pop Faction Types
| LIOS
| Object key already exists
|
|-
| style="height: 46px" | Pop Jobs| N/ALIOS [?]
| {{small|''[none]''}}
| Neither entry usedBreaks auto-<br>generated modifiers
|-
| Precursor Civilizations
| | |
|-
| Random Names
| | |
|-
| Scripted Effects
| LIOS
| Object key already exists
|
|-
| Scripted Localisation
| | |
|-
| Scripted Triggers
| LIOS
| Object key already exists
|
|-
| Scripted Variables
| FIOS
| Variable name taken
|
|-
| Section Templates
| FIOS
| Duplicate section template found
|
|-
| Sector Focuses
| LIOS
| Object key already exists
|
|-
| Sector Types
| | |
|-
| Ship Behaviors
| FIOS
| Behavior name already exists
|
|-
| Ship Sizes
| LIOS
| Object key already exists
|
|-
| Solar System Initializers
| FIOS
| Initializer already exists
|
|-
| Special Projects
| FIOS
| Object key already exists
|
|-
| style="height: 46px" | Species Archetypes| Dupl (Last)LIOS
| Object key already exists
| Breaks bonusauto-<br/>trait points modifiergenerated modifiers
|-
| Species Classes
| LIOS
| Object key already exists
|
|-
| Species Names
| | |
|-
| style="height: 46px" | Species Rights
| LIOS
| Object key already exists
| Effect tooltips are<br/>independent of the effects
|-
| Star Classes
| FIOS
| |
|-
| Starbase Buildings
| LIOS
| Object key already exists
|
|-
| Starbase Levels
| LIOS
| Object key already exists
|
|-
| Starbase Modules
| LIOS
| Object key already exists
|
|-
| Starbase Types
| LIOS
| Object key already exists
|
|-
| style="height: 69px" | Start Screen Messages| FIOS| {{small|''[none]''}}| The first valid part for each<br>location will be used and the<br>rest discarded without issue.
|-
| Static Modifiers
| FIOS
| {{small|''[none]''}}
|
|-
| Strategic Resources
| FIOS
| {{small|''[none]''}}
|
|-
| Subjects
| LIOS
| Object key already exists
|
|-
| System Types
| LIOS
| Object key already exists
|
|-
| Technology
| LIOS
| Duplicate technology
|
|-
| └───Tiers
| LIOS
| |
|-
| Terraform (Links)
| DuplDUPL
| {{small|''[none]''}}
|
|-
| Trade Conversions
| LIOS
| Object key already exists
|
|-
| style="height: 46px" | Traditions
| LIOS
| Object key already exists
|-
| Traits
| DuplDUPL
| {{small|''[none]''}}
|
|-
| War Goals
| LIOS
| Object key already exists
|
|}
{{end box wrapper}}
FIOS - First in, only served LIOS – Last in, only served DUPL – Duplicates
LIOS - Last in, only servedNO – Cannot individually overwrite
Dupl - DuplicatesPlease note that not everything could be tested extensively.
Dupl (Last) - Technically duplicates, however only last is used (breaks autogenerated modifiers)=== Localisation folder ===
Dupl (First) - Technically duplicates, however only first Localisation is used (breaks autogenerated modifiers)likely LIOS
A guide for overwriting localisation can be found [[Localisation modding#Overwriting Vanilla Text|here]].
Please note that these have not been extensively tested; Entries listed as FIOS or LIOS might actually be Dupl, Dupl (First), or Dupl (Last)=== Events folder ===
====Localisation Folder====Localisation folder is not consistent.Events are treated as FIOS
It's possible to overwrite by LIOS ''and'' FIOS.=== Interface folder ===
A more sure-fire way to overwrite localization Interface is to add a "replace" folder inside and add the parts your mod is trying to overwrite there.likely LIOS
==Tools & utilities ==Events Folder====Events are treated as FIOS
==Tools & utilities==* [http://notepad-plus-plus.org/ Notepad++] - Powerful editor to change files.* [http://winmerge.org/ WinMerge] - Contrasts the difference between two text files. Useful for updating mods.* [https://code.visualstudio.com/ VS Code] - Powerful, hackable, free open source editor from Microsoft.* [[Maya exporter]] - Clausewitz Maya Exporter to create your own 3D models.* [https://github.com/a1studmuffin/SpaceshipGenerator/ Spaceship Generator] - A Blender script to procedurally generate 3D spaceships* [https://forum.paradoxplaza.com/forum/index.php?threads/modding-tool-retalyx-stellaris-static-galaxy-generator-v0-9.951308/ Static Galaxy Generator] - A static galaxy generator and editor for your mods. ([https://steamcommunity.com/sharedfiles/filedetails/?id=699098812 How to use])* [[Steam Workshop]] - The place for where you can share your creations with other players.* [https://www.sublimetext.com/ Sublime Text] - Powerful, moddable, hackable text editor. Install packages as your needs evolve.
* [https://reddit.com/r/StellarisMods Stellaris Modding Subreddit]
* [https://discord.gg/bHVez2C The Stellaris Modding Den] - the central modding discord for Stellaris.* [https://docs.google.com/document/d/17knnrF_RzaVFo_s66360m7rCypSH6yMTymA8B0jpTog/edit Paradox Graphics – A Comprehensive Guide] – In-depth documentation for preparing 3d models for Clausewitz engine games like Stellaris.
==External linksAdvanced tips ==[https://forum.paradoxplaza.com/forum/index.php?threads/stellaris-dev-diary-31-modding-scripting-anomalies.923348/ Stellaris Dev Diary #31 - Modding (Scripting Anomalies)]<br />[https://forum.paradoxplaza.com/forum/index.php?threads/stellaris-dev-diary-32-modding-art.924762/ Stellaris Dev Diary #32 - Modding art]
* For the bigger mods using a source control management tool (Git, …), it is handy to create a symbolic link between Stellaris mod folder and the working directory of the local repository, especially if the mod also has sub-mods. Note that you'll still need to copy the .mod file(s) manually, but they rarely change. Run the following command from the parent directory of main git folder, replacing:** <mod_path_name> by the value of <code>path</code> attribute from .mod file** <git_mod_folder> by the name of the sub-folder that contain mod data (folders common, decisions, events, etc…) mklink /J "%USERPROFILE%\Documents\Paradox Interactive\Stellaris\mod\<mod_path_name>" ".\<git_mod_folder>" === Testing Mods === Certain, more obscure console commands (that don't show up if you type 'help' in the console) are extremely useful in the process of testing a mod.* <code>observe</code> – switches you to Observer Mode. You will no longer play as any specific character – this will allow the game to run for a long period of time, uninterrupted. It also makes every invisible trait and secret religion visible.* <code>run</code> <filename.txt> – runs script in a txt file located in the in the Documents install directory. It will be executed from the player's scope. Useful for testing tricky scripts – you can just have the script open in a different window, run it, tweak the script, save it, and run it again – it will be recompiled every time.* <small><s><code>reloadevents</code> – reloads and recompiles every single event (may take a while depending on your hardware). Useful if you want to tweak an entire event or chain of events without rebooting the game every time.</s> not yet implemented</small>* <small><s><code>reloadloc</code> – reloads the entire localisation table. Useful if you spot a typo while testing your mod, or if you are trying to fit as much text in an event frame as possible.</s> not yet implemented</small> More [[Console commands]] are available on the main page, and are very useful for more specific alterations like adding lovers or killing people. == External links == [https://forum.paradoxplaza.com/forum/index.php?threads/stellaris-dev-diary-31-modding-scripting-anomalies.923348/ Stellaris Dev Diary #31 – Modding (Scripting Anomalies)]<br>[https://forum.paradoxplaza.com/forum/index.php?threads/stellaris-dev-diary-32-modding-art.924762/ Stellaris Dev Diary #32 – Modding art] ==See also==
*[[Mods]]
== References ==
<references />
<references />
{{Template:ModdingNavbox}}
[[Category:Modding|#]]
Autopatrol
102
edits

Navigation menu