(merge from offical wiki) |
小 (文本替换 - 替换“Category:Modding”为“Category:模组制作”) |
||
第108行: | 第108行: | ||
==The Game has BEGUN!== | ==The Game has BEGUN!== | ||
{{Template:ModdingNavbox}} | {{Template:ModdingNavbox}} | ||
[[Category: | [[Category: 模组制作]] |
2022年3月8日 (二) 20:30的最新版本
It can be confusing, especially to new modders, how exactly the game sets up a new Galaxy and how to modify anything during Game Setup. Here is a quick reference for everything that the Vanilla game does when setting up a new game.
To understand this page, it is recommended you familiarize yourself with Events and On Actions.
Game Start Modding[编辑 | 编辑源代码]
The most-compatible way to mod game setup is to add custom events that file after the built-in game events. It is also possible to fire events before built-in events. The reason that events are the most compatible way to do this is that they don't overwrite any of the built-in effects or effects, and thus won't conflict with other mods that also want to edit the game setup process.
For adding technologies, use the on_action empire_init_add_technologies
which is called once per country. This is the intended place to grant free technologies as part of an origin, civic, or other custom startup conditions. Here is a sample event:
country_event = { id = my_event.1 is_triggered_only = yes hide_window = yes trigger = { # your conditions go here is_regular_empire = yes OR = { has_valid_civic = civic_corporate_dominion is_megacorp = yes has_valid_civic = civic_merchant_guilds } } immediate = { # grant technologies here give_technology = { tech = tech_space_trading message = no } } }
For adjusting the starting conditions on an empire's homeworld, use the on_action empire_init_capital_planet
which is called once per country in the scope of that empire's capital planet. Here is a sample event:
planet_event = {id = my_event.2 is_triggered_only = yes hide_window = yes pre_triggers = { has_owner = yes } trigger = { # your conditions go here - notice how it scopes to the planet's owner owner = { is_regular_empire = yes OR = { has_valid_civic = civic_corporate_dominion is_megacorp = yes has_valid_civic = civic_merchant_guilds } } free_building_slots > 0 # this checks that the planet has space for a building } immediate = { # make changes to the capital planet here, you can scope to the solar system like this: solar_system = { <code here> } add_building = building_galactic_stock_exchange }
}
A special case for game setup is creating a new origin or civic with a secondary species. The built-in code will not correctly spawn secondary Pops. Instead, it is recommended to follow this template that uses an on_action to disable the built-in setup event for the relevant empire(s), and then spawns Pops as desired for the primary and secondary species but also executes the built-in capital district/building/blocker, and so on code.
Review the Game Start Execution Order section for the full details of the when code executes as a new game is starting.
Game Start Execution Order[编辑 | 编辑源代码]
After pressing PLAY on the Game Details screen to begin a new game, scripts execute in the following order:
- Galaxy is created, using common/solar_system_initializers (See System modding)
- generate_empire_home_planet
- generate_home_system_resources
- on_action empire_init_technologies is called
- event game_start.8 - Adds starting resources to Empires and some techs for specific Origins and Civics
- on_action empire_init_capital_planet
- event game_start.12 - Sets up capital planets by calling the following scripted effects:
- (excludes set_planet_flag = special_start_planet from solar_system_initializers)
- generate_start_deposits_and_blockers
- generate_start_buildings_and_districts
- generate_start_pops
- generate_home_planet_final_pass
- void_dweller_home_planet_setup
- on_action empire_init_create_ships
- event game_start.9 - Creates beginning ships for Empires
- on_action on_initialize_advanced_colony
- Only for the extra colonies of AI empires that were flagged as Advanced Starts by the engine during Galaxy creation.
- events game_start.20 through game_start.23 - Sets up the additional colonies and creates their pops
- on_action on_become_advanced_empire
- event game_start.6 - adds more starting Resources, technologies, and builds more Mining and Research stations
- on_action on_game_start
- event game_start.1 - Lots of necessary things that the engine requires, as well as setting up flavor events for the player and/or certain Origins/Civics
- event game_start.2 - Clears Planet Modifiers from Capital planets
- event game_start.3 - Sets up Advisor and Tutorial
- event game_start.5 - Sets up the Nomad Fleet (If Megacorp is NOT active)
- event game_start.31 - Spawns Wormholes
- If DLC Distant Stars is active:
- event distar.290 - Create Corrupted Avatar system
- event distar.252 - Setup Phaseshifting Planet (if Galaxy creation spawned it from solar_system_initializers)
- event distar.295 - If Ratling systems spawned, make sure they have Hyperlane connections
- event distar.8000 - Randomize L-Gate outcome
- event colony_mod.100 - Adds Titanic Life blocker to planets with the Planet Modifier
- event game_start.50 - Setup Nebula effects for systems in Nebulas
- event galactic_features.406 - spawn VLUUR
- event clones.1 - Make Clone Army pops unable to be Genetically Modified
- event central.1 - Chance to initialize the Central Crystal event chain for Void Dwellers
- event akx.8000 - Chance to initialize the Horizon Signal system
- on_action on_game_start_country
- event game_start.33 - Setup conditions for specific Origins/Civics, and build starting home system Mining and Research Stations
- event game_start.10 - Setup orbital stations and customizations for Fallen Empires
- event necroids.4 - Switch Guaranteed Habitable Planets to Primitives for Necrophage Origin
- event clones.2 - Give Cloning techs to Clone Army Origins
- event clones.3 - Initialize Clone Vats for Clone Army Origins
- Galaxy loads for Player
- Intro Window displayed to player
- Contents of Intro Window broken into three parts (location = 0/1/2) and pulled from common/start_screen_messages/
- on_action on_game_press_begin
- events tutorial.104 and advisor.1 to start the Tutorial and/or Advisor messages.
The Game has BEGUN![编辑 | 编辑源代码]
帝国 | 帝国 • 思潮 • 政府 • 国民理念 • 起源 • 承诺 • 议程 • 传统 • 飞升天赋 • 法令 • 政策 • 遗珍 • 科技 • 自定义帝国 |
人口 | 岗位 • 派系 |
领袖 | 领袖 • 领袖特质 |
物种 | 物种 • 物种特质 |
行星 | 行星 • 行星特征 • 轨道矿藏 • 建筑 • 区划 • 行星决议 |
星系 | 星系 • 恒星基地 • 巨型结构 • 虫洞 • 星门 • 地图 |
舰队 | 舰队 • 舰船 • 部件 |
地面战 | 陆军 • 轰炸姿态 |
外交 | 外交 • 联邦 • 星海共同体 • 评价修正 • 宣战理由 • 战争目标 |
事件 | 事件 • 异常现象 • 特殊项目 • 考古遗址 |
游玩 | 游玩 • 定义 • 研究 • 经济 • 游戏开局 |
动态修改 | 动态 • 指令效果 • 触发条件 • 作用域 • 修正 • 变量 • AI |
媒体/本地化 | Maya 导出器 • 图形 • 肖像 • 旗帜 • 事件图片 • 界面 • 图标 • 音乐 • 本地化 |
Other | 控制台命令 • 存档编辑 • Steam 创意工坊 • 模组制作教程 |