Advertisement
Guest User

Untitled

a guest
Oct 24th, 2019
262
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 87.86 KB | None | 0 0
  1. ############################
  2. #
  3. # Crisis Events II
  4. #
  5. # Written by Henrik Thyrwall
  6. #
  7. ############################
  8.  
  9. namespace = crisis
  10.  
  11. ### EXTRADIMENSIONALS
  12.  
  13. country_event = {
  14. id = crisis.10001
  15. hide_window = yes
  16. trigger = { always = no }
  17.  
  18. immediate = {
  19. if = {
  20. limit = { NOT = { exists = event_target:portal_holder_1 } }
  21. create_country = {
  22. name = "NAME_Portal_Holder_1"
  23. type = portal_holder
  24. flag = {
  25. icon= {
  26. category = "special"
  27. file = "extradimensional_01.dds"
  28. }
  29. background= {
  30. category = "backgrounds"
  31. file = "circle.dds"
  32. }
  33. colors={
  34. "black"
  35. "black"
  36. "null"
  37. "null"
  38. }
  39. }
  40. effect = {
  41. save_global_event_target_as = portal_holder_1
  42. every_playable_country = {
  43. establish_communications_no_message = event_target:portal_holder_1
  44. }
  45. }
  46. }
  47. }
  48. #if = {
  49. # limit = { NOT = { any_country = { is_country_type = extradimensional has_country_flag = unbidden } } }
  50. random_country = {
  51. limit = { is_country_type = extradimensional }
  52. set_country_flag = unbidden
  53. }
  54. #}
  55. random_country = {
  56. limit = { is_country_type = portal_holder }
  57. random_owned_ship = { set_ship_flag = unbidden_portal }
  58. }
  59. }
  60. }
  61.  
  62. country_event = {
  63. id = crisis.10002
  64. hide_window = yes
  65. trigger = { always = no }
  66.  
  67. immediate = {
  68. random_country = {
  69. limit = { is_country_type = portal_holder }
  70. random_owned_ship = {
  71. limit = { is_ship_size = dimensional_portal_ed }
  72. set_ship_flag = unbidden_portal
  73. }
  74. }
  75. }
  76. }
  77.  
  78. # Extradimensional Invasion Begins (HIDDEN)
  79. country_event = {
  80. id = crisis.1000
  81. hide_window = yes
  82. fire_only_once = yes
  83. is_triggered_only = yes
  84.  
  85. immediate = {
  86. set_crisis_sound = extradimensional_crisis_ambient_stage_1
  87. set_crisis_stage_1 = yes
  88. create_country = {
  89. name = "NAME_Portal_Holder_1"
  90. type = portal_holder
  91. flag = {
  92. icon= {
  93. category = "special"
  94. file = "extradimensional_01.dds"
  95. }
  96. background= {
  97. category = "backgrounds"
  98. file = "circle.dds"
  99. }
  100. colors={
  101. "black"
  102. "black"
  103. "null"
  104. "null"
  105. }
  106. }
  107. effect = {
  108. save_global_event_target_as = portal_holder_1
  109. every_playable_country = {
  110. establish_communications_no_message = event_target:portal_holder_1
  111. }
  112. }
  113. }
  114. awaken_guardians_of_the_galaxy = yes
  115.  
  116. endgame_telemetry = extradimensional
  117. set_global_flag = extradimensional_invasion_happened
  118. set_global_flag = galactic_crisis_happened
  119. random_system = {
  120. limit = {
  121. NOT = {
  122. any_country = {
  123. OR = {
  124. is_country_type = fallen_empire
  125. is_country_type = awakened_fallen_empire
  126. }
  127. any_system_within_border = {
  128. is_same_value = prev
  129. }
  130. }
  131. }
  132. }
  133. set_star_flag = extradimensional_origin_system
  134. save_event_target_as = extradimensional_system
  135. random_system_planet = {
  136. create_species = {
  137. name = "NAME_Unbidden"
  138. class = EXD
  139. portrait = exd1
  140. traits = random
  141. effect = { save_event_target_as = extradimensional_species }
  142. }
  143. create_country = {
  144. name = "NAME_Unbidden"
  145. type = "extradimensional"
  146. species = event_target:extradimensional_species
  147. name_list = "Extradimensional"
  148. effect = { set_country_flag = unbidden }
  149. flag = {
  150. icon= {
  151. category = "special"
  152. file = "extradimensional_01.dds"
  153. }
  154. background= {
  155. category = "backgrounds"
  156. file = "circle.dds"
  157. }
  158. colors={
  159. "indigo"
  160. "blue"
  161. "null"
  162. "null"
  163. }
  164. }
  165. effect = {
  166. create_ship_design = { design = "NAME_Void_Shaper" }
  167. add_ship_design = last_created_design
  168. create_ship_design = { design = "NAME_Unbidden_Anchor" }
  169. add_ship_design = last_created_design
  170. save_global_event_target_as = extradimensionals
  171. establish_communications_no_message = event_target:portal_holder_1
  172. set_faction_hostility = {
  173. target = event_target:portal_holder_1
  174. set_hostile = no
  175. }
  176. set_graphical_culture = extra_dimensional_01
  177. save_event_target_as = extradimensionals
  178. }
  179. }
  180. event_target:extradimensionals = {
  181. create_fleet = {
  182. name = "NAME_Dimensional_Portal"
  183. effect = {
  184. set_owner = PREV
  185. create_ship = {
  186. name = random
  187. design = "NAME_Unbidden_Portal"
  188. graphical_culture = "extra_dimensional_01"
  189. effect = { set_ship_flag = unbidden_portal }
  190. }
  191. set_location = {
  192. target = PREVPREV
  193. distance = 40
  194. angle = random
  195. }
  196. save_event_target_as = dimensional_portal
  197. fleet_event = { id = crisis.1003 days = 15 } # Second Fleet Arrives
  198. fleet_event = { id = crisis.1003 days = 30 } # Third Fleet Arrives
  199. fleet_event = { id = crisis.1003 days = 55 } # Fourth Fleet Arrives
  200. fleet_event = { id = crisis.1003 days = 90 } # Fifth Fleet Arrives
  201. fleet_event = { id = crisis.1003 days = 180 } # Sixth Fleet Arrives
  202. fleet_event = { id = crisis.1003 days = 265 } # Seventh Fleet Arrives
  203. fleet_event = { id = crisis.1003 days = 340 } # Eight Fleet Arrives
  204. fleet_event = { id = crisis.1003 days = 425 } # Ninth Fleet Arrives
  205. fleet_event = { id = crisis.1003 days = 550 } # Tenth Fleet Arrives
  206. fleet_event = { id = crisis.1006 days = 20 } # First Constructor Arrives
  207. fleet_event = { id = crisis.1006 days = 25 } # Second Constructor Arrives
  208. fleet_event = { id = crisis.1006 days = 160 } # Third Constructor Arrives
  209. fleet_event = { id = crisis.1006 days = 310 } # Fourth Constructor Arrives
  210. event_target:extradimensionals = { country_event = { id = crisis.1260 days = 350 } } # Spawn Cycle starts
  211. #set_owner = event_target:portal_holder_1 #when first anchor built
  212. }
  213. }
  214. create_leader = {
  215. class = admiral
  216. species = event_target:extradimensional_species
  217. name = random
  218. skill = 3
  219. traits = {
  220. trait = leader_trait_ethereal
  221. }
  222. }
  223. create_fleet = {
  224. effect = {
  225. set_owner = PREV
  226. create_ship = {
  227. name = random
  228. design = "NAME_Revenant"
  229. graphical_culture = "extra_dimensional_01"
  230. }
  231. assign_leader = last_created_leader
  232. while = {
  233. count = 20
  234. create_ship = {
  235. name = random
  236. design = "NAME_Revenant"
  237. graphical_culture = "extra_dimensional_01"
  238. }
  239. }
  240. while = {
  241. count = 30
  242. create_ship = {
  243. name = random
  244. design = "NAME_Phantom"
  245. graphical_culture = "extra_dimensional_01"
  246. }
  247. }
  248. while = {
  249. count = 45
  250. create_ship = {
  251. name = random
  252. design = "NAME_Wraith"
  253. graphical_culture = "extra_dimensional_01"
  254. }
  255. }
  256. set_location = {
  257. target = event_target:dimensional_portal
  258. distance = 5
  259. angle = random
  260. }
  261. set_fleet_stance = aggressive
  262. set_aggro_range = 500
  263. set_aggro_range_measure_from = self
  264. }
  265. }
  266. }
  267. }
  268. if = {
  269. limit = { exists = starbase }
  270. starbase = { fleet = { destroy_fleet = this } }
  271. }
  272. create_starbase = {
  273. size = starbase_exd
  274. owner = event_target:extradimensionals
  275. }
  276. }
  277. observer_event = { id = observer.34 }
  278. # make portal invincible
  279. event_target:extradimensionals = {
  280. random_owned_ship = { ship_event = { id = crisis.1280 } }
  281. }
  282. every_country = {
  283. limit = {
  284. OR = {
  285. is_country_type = default
  286. is_country_type = fallen_empire
  287. is_country_type = awakened_fallen_empire
  288. }
  289. intel_level = {
  290. level = high
  291. system = event_target:extradimensional_system
  292. }
  293. }
  294. country_event = { id = crisis.1007 }
  295. }
  296. every_country = {
  297. limit = {
  298. OR = {
  299. is_country_type = default
  300. is_country_type = fallen_empire
  301. is_country_type = awakened_fallen_empire
  302. }
  303. NOT = {
  304. intel_level = {
  305. level = high
  306. system = event_target:extradimensional_system
  307. }
  308. }
  309. }
  310. country_event = { id = crisis.1008 }
  311. }
  312. }
  313. }
  314.  
  315. # Fleet Reinforcements
  316. fleet_event = {
  317. id = crisis.1003
  318. hide_window = yes
  319.  
  320. is_triggered_only = yes
  321.  
  322. immediate = {
  323. event_target:extradimensionals = {
  324. random_list = {
  325. 25 = {
  326. create_leader = {
  327. class = admiral
  328. species = event_target:extradimensional_species
  329. name = random
  330. skill = 3
  331. traits = {
  332. trait = leader_trait_ethereal
  333. }
  334. }
  335. }
  336. 25 = {
  337. create_leader = {
  338. class = admiral
  339. species = event_target:extradimensional_species
  340. name = random
  341. skill = 3
  342. traits = {
  343. trait = leader_trait_dimensional_stutter
  344. }
  345. }
  346. }
  347. 50 = {
  348. create_leader = {
  349. class = admiral
  350. species = event_target:extradimensional_species
  351. name = random
  352. skill = 3
  353. }
  354. }
  355. }
  356. create_fleet = {
  357. effect = {
  358. set_owner = PREV
  359. create_ship = {
  360. name = random
  361. design = "NAME_Revenant"
  362. graphical_culture = "extra_dimensional_01"
  363. }
  364. assign_leader = last_created_leader
  365. while = {
  366. count = 8
  367. create_ship = {
  368. name = random
  369. design = "NAME_Revenant"
  370. graphical_culture = "extra_dimensional_01"
  371. }
  372. }
  373. while = {
  374. count = 12
  375. create_ship = {
  376. name = random
  377. design = "NAME_Phantom"
  378. graphical_culture = "extra_dimensional_01"
  379. }
  380. }
  381. while = {
  382. count = 20
  383. create_ship = {
  384. name = random
  385. design = "NAME_Wraith"
  386. graphical_culture = "extra_dimensional_01"
  387. }
  388. }
  389. set_location = {
  390. target = ROOT
  391. distance = 5
  392. angle = random
  393. }
  394. set_fleet_stance = aggressive
  395. set_aggro_range = 500
  396. set_aggro_range_measure_from = self
  397. }
  398. }
  399. }
  400. }
  401. }
  402.  
  403. # Constructor
  404. fleet_event = {
  405. id = crisis.1006
  406. hide_window = yes
  407.  
  408. is_triggered_only = yes
  409.  
  410. immediate = {
  411. event_target:extradimensionals = {
  412. create_fleet = {
  413. effect = {
  414. set_owner = PREV
  415. create_ship = {
  416. name = random
  417. design = "NAME_Void_Shaper"
  418. graphical_culture = "extra_dimensional_01"
  419. }
  420. set_location = {
  421. target = ROOT
  422. distance = 5
  423. angle = random
  424. }
  425. }
  426. }
  427. }
  428. }
  429. }
  430.  
  431. # Notification (High Intel)
  432. country_event = {
  433. id = crisis.1007
  434. title = "crisis.1007.name"
  435. desc = "crisis.1007.desc"
  436. picture = GFX_evt_wormhole
  437. show_sound = event_ex_started
  438. location = event_target:extradimensional_system
  439.  
  440. is_triggered_only = yes
  441.  
  442. after = {
  443. begin_event_chain = {
  444. event_chain = "extradimensional_invasion_chain"
  445. target = ROOT
  446. }
  447. create_point_of_interest = {
  448. id = extradimensional_invasion_poi.1
  449. name = "extradimensional_invasion_1_poi"
  450. desc = "extradimensional_invasion_1_poi_desc"
  451. event_chain = "extradimensional_invasion_chain"
  452. location = event_target:extradimensional_system
  453. }
  454. create_point_of_interest = {
  455. id = extradimensional_invasion_poi.4
  456. name = "extradimensional_invasion_4_poi"
  457. desc = "extradimensional_invasion_4_poi_desc"
  458. event_chain = "extradimensional_invasion_chain"
  459. }
  460. hidden_effect = {
  461. add_event_chain_counter = {
  462. event_chain = "extradimensional_invasion_chain"
  463. counter = "dimensional_anchors_1"
  464. amount = 1
  465. }
  466. country_event = { id = crisis.1010 }
  467. }
  468. }
  469.  
  470. option = {
  471. name = crisis.18.a
  472. trigger = {
  473. has_spiritualist_government = yes
  474. NOR = {
  475. has_ethic = "ethic_fanatic_egalitarian"
  476. has_ethic = "ethic_fanatic_authoritarian"
  477. has_ethic = "ethic_fanatic_xenophile"
  478. has_ethic = "ethic_fanatic_xenophobe"
  479. }
  480. }
  481. }
  482. option = {
  483. name = crisis.18.b
  484. trigger = {
  485. has_militarist_government = yes
  486. NOR = {
  487. has_ethic = "ethic_fanatic_egalitarian"
  488. has_ethic = "ethic_fanatic_authoritarian"
  489. has_ethic = "ethic_fanatic_xenophile"
  490. has_ethic = "ethic_fanatic_xenophobe"
  491. }
  492. }
  493. }
  494. option = {
  495. name = crisis.18.c
  496. trigger = {
  497. has_materialist_government = yes
  498. NOR = {
  499. has_ethic = "ethic_fanatic_egalitarian"
  500. has_ethic = "ethic_fanatic_authoritarian"
  501. has_ethic = "ethic_fanatic_xenophile"
  502. has_ethic = "ethic_fanatic_xenophobe"
  503. }
  504. }
  505. }
  506. option = {
  507. name = crisis.18.d
  508. trigger = {
  509. has_pacifist_government = yes
  510. NOR = {
  511. has_ethic = "ethic_fanatic_egalitarian"
  512. has_ethic = "ethic_fanatic_authoritarian"
  513. has_ethic = "ethic_fanatic_xenophile"
  514. has_ethic = "ethic_fanatic_xenophobe"
  515. }
  516. }
  517. }
  518. option = {
  519. name = crisis.18.e
  520. trigger = {
  521. has_government = gov_megacorporation
  522. NOR = {
  523. has_ethic = "ethic_fanatic_egalitarian"
  524. has_ethic = "ethic_fanatic_authoritarian"
  525. has_ethic = "ethic_fanatic_xenophile"
  526. has_ethic = "ethic_fanatic_xenophobe"
  527. }
  528. }
  529. }
  530. option = {
  531. name = crisis.18.f
  532. trigger = {
  533. OR = {
  534. has_generic_government = yes
  535. has_government = gov_enlightened_monarchy
  536. has_government = gov_elective_monarchy
  537. has_government = gov_hive_mind
  538. }
  539. NOR = {
  540. has_ethic = "ethic_fanatic_egalitarian"
  541. has_ethic = "ethic_fanatic_authoritarian"
  542. has_ethic = "ethic_fanatic_xenophile"
  543. has_ethic = "ethic_fanatic_xenophobe"
  544. }
  545. }
  546. }
  547. option = {
  548. name = crisis.18.g
  549. trigger = {
  550. has_ethic = "ethic_fanatic_xenophobe"
  551. }
  552. }
  553. option = {
  554. name = crisis.1007.a
  555. trigger = {
  556. has_ethic = "ethic_fanatic_xenophile"
  557. }
  558. }
  559. option = {
  560. name = crisis.1007.b
  561. trigger = {
  562. has_ethic = "ethic_fanatic_authoritarian"
  563. }
  564. }
  565. option = {
  566. name = crisis.18.j
  567. trigger = {
  568. has_ethic = "ethic_fanatic_egalitarian"
  569. }
  570. }
  571. option = {
  572. name = crisis.18.h
  573. trigger = {
  574. has_ethic = ethic_gestalt_consciousness
  575. }
  576. }
  577. }
  578.  
  579. # Notification
  580. country_event = {
  581. id = crisis.1008
  582. title = "crisis.1008.name"
  583. desc = "crisis.1008.desc"
  584. picture = GFX_evt_physics_research
  585. show_sound = event_alien_signal
  586.  
  587. is_triggered_only = yes
  588.  
  589. option = {
  590. name = crisis.1008.a
  591. hidden_effect = {
  592. country_event = { id = crisis.1009 days = 30 }
  593. }
  594. }
  595. }
  596.  
  597. # Threat Identified
  598. country_event = {
  599. id = crisis.1009
  600. title = "crisis.1007.name"
  601. desc = "crisis.1009.desc"
  602. picture = GFX_evt_wormhole
  603. show_sound = event_ex_started
  604.  
  605. is_triggered_only = yes
  606.  
  607. immediate = {
  608. random_system = {
  609. limit = { has_star_flag = extradimensional_origin_system }
  610. save_event_target_as = extradimensional_system
  611. }
  612. }
  613.  
  614. after = {
  615. begin_event_chain = {
  616. event_chain = "extradimensional_invasion_chain"
  617. target = ROOT
  618. }
  619. create_point_of_interest = {
  620. id = extradimensional_invasion_poi.1
  621. name = "extradimensional_invasion_1_poi"
  622. desc = "extradimensional_invasion_1_poi_desc"
  623. event_chain = "extradimensional_invasion_chain"
  624. location = event_target:extradimensional_system
  625. }
  626. create_point_of_interest = {
  627. id = extradimensional_invasion_poi.4
  628. name = "extradimensional_invasion_4_poi"
  629. desc = "extradimensional_invasion_4_poi_desc"
  630. event_chain = "extradimensional_invasion_chain"
  631. }
  632. hidden_effect = {
  633. add_event_chain_counter = {
  634. event_chain = "extradimensional_invasion_chain"
  635. counter = "dimensional_anchors_1"
  636. amount = 1
  637. }
  638. country_event = { id = crisis.1010 }
  639. }
  640. }
  641.  
  642. option = {
  643. name = crisis.18.a
  644. trigger = {
  645. has_spiritualist_government = yes
  646. NOR = {
  647. has_ethic = "ethic_fanatic_egalitarian"
  648. has_ethic = "ethic_fanatic_authoritarian"
  649. has_ethic = "ethic_fanatic_xenophile"
  650. has_ethic = "ethic_fanatic_xenophobe"
  651. }
  652. }
  653. }
  654. option = {
  655. name = crisis.18.b
  656. trigger = {
  657. has_militarist_government = yes
  658. NOR = {
  659. has_ethic = "ethic_fanatic_egalitarian"
  660. has_ethic = "ethic_fanatic_authoritarian"
  661. has_ethic = "ethic_fanatic_xenophile"
  662. has_ethic = "ethic_fanatic_xenophobe"
  663. }
  664. }
  665. }
  666. option = {
  667. name = crisis.18.c
  668. trigger = {
  669. has_materialist_government = yes
  670. NOR = {
  671. has_ethic = "ethic_fanatic_egalitarian"
  672. has_ethic = "ethic_fanatic_authoritarian"
  673. has_ethic = "ethic_fanatic_xenophile"
  674. has_ethic = "ethic_fanatic_xenophobe"
  675. }
  676. }
  677. }
  678. option = {
  679. name = crisis.18.d
  680. trigger = {
  681. has_pacifist_government = yes
  682. NOR = {
  683. has_ethic = "ethic_fanatic_egalitarian"
  684. has_ethic = "ethic_fanatic_authoritarian"
  685. has_ethic = "ethic_fanatic_xenophile"
  686. has_ethic = "ethic_fanatic_xenophobe"
  687. }
  688. }
  689. }
  690. option = {
  691. name = crisis.18.e
  692. trigger = {
  693. has_government = gov_megacorporation
  694. NOR = {
  695. has_ethic = "ethic_fanatic_egalitarian"
  696. has_ethic = "ethic_fanatic_authoritarian"
  697. has_ethic = "ethic_fanatic_xenophile"
  698. has_ethic = "ethic_fanatic_xenophobe"
  699. }
  700. }
  701. }
  702. option = {
  703. name = crisis.18.f
  704. trigger = {
  705. OR = {
  706. has_generic_government = yes
  707. has_government = gov_enlightened_monarchy
  708. has_government = gov_elective_monarchy
  709. has_government = gov_hive_mind
  710. }
  711. NOR = {
  712. has_ethic = "ethic_fanatic_egalitarian"
  713. has_ethic = "ethic_fanatic_authoritarian"
  714. has_ethic = "ethic_fanatic_xenophile"
  715. has_ethic = "ethic_fanatic_xenophobe"
  716. }
  717. }
  718. }
  719. option = {
  720. name = crisis.18.g
  721. trigger = {
  722. has_ethic = "ethic_fanatic_xenophobe"
  723. }
  724. }
  725. option = {
  726. name = crisis.1007.a
  727. trigger = {
  728. has_ethic = "ethic_fanatic_xenophile"
  729. }
  730. }
  731. option = {
  732. name = crisis.1007.b
  733. trigger = {
  734. has_ethic = "ethic_fanatic_authoritarian"
  735. }
  736. }
  737. option = {
  738. name = crisis.18.j
  739. trigger = {
  740. has_ethic = "ethic_fanatic_egalitarian"
  741. }
  742. }
  743. option = {
  744. name = crisis.18.h
  745. trigger = {
  746. has_ethic = ethic_gestalt_consciousness
  747. }
  748. }
  749. }
  750.  
  751. # Intercepted Transmission
  752. country_event = {
  753. id = crisis.1010
  754. title = "crisis.1010.name"
  755. desc = "crisis.1010.desc"
  756.  
  757. diplomatic = yes
  758.  
  759. picture_event_data = {
  760. portrait = exd1
  761. room = "extradimensional_room"
  762. }
  763.  
  764. is_triggered_only = yes
  765.  
  766. immediate = {
  767. establish_communications_no_message = event_target:extradimensionals
  768. }
  769.  
  770. option = {
  771. name = crisis.1010.a
  772. }
  773. }
  774.  
  775. # Colony Bombarded
  776. planet_event = {
  777. id = crisis.1011
  778. title = "crisis.1011.name"
  779. desc = "crisis.1011.desc"
  780. picture = GFX_evt_city_ruins
  781. show_sound = event_ghost_town
  782.  
  783. is_triggered_only = yes
  784.  
  785. trigger = {
  786. planet_devastation >= 100
  787. FROM = {
  788. OR = {
  789. is_country_type = extradimensional
  790. is_country_type = extradimensional_2
  791. is_country_type = extradimensional_3
  792. }
  793. }
  794. }
  795.  
  796. immediate = {
  797. add_threat = { who = from amount = 2 }
  798. destroy_colony = yes
  799. if = {
  800. limit = {
  801. NOR = {
  802. is_planet_class = pc_ringworld_habitable
  803. is_planet_class = pc_habitat
  804. }
  805. }
  806. random_list = {
  807. 50 = { change_pc = pc_barren }
  808. 50 = { change_pc = pc_barren_cold }
  809. }
  810. reset_planet = yes
  811. add_modifier = {
  812. modifier = "terraforming_candidate"
  813. days = -1
  814. }
  815. }
  816. else_if = {
  817. limit = { is_planet_class = pc_ringworld_habitable }
  818. change_pc = pc_ringworld_habitable_damaged
  819. reset_planet = yes
  820. }
  821. else_if = {
  822. limit = { is_planet_class = pc_habitat }
  823. remove_planet = yes
  824. }
  825. if = {
  826. limit = { FROM = { is_country_type = extradimensional } }
  827. every_country = {
  828. limit = { has_event_chain = "extradimensional_invasion_chain" }
  829. add_event_chain_counter = {
  830. event_chain = "extradimensional_invasion_chain"
  831. counter = "extradimensional_planets_1"
  832. amount = 1
  833. }
  834. }
  835. }
  836. else_if = {
  837. limit = { FROM = { is_country_type = extradimensional_2 } }
  838. every_country = {
  839. limit = { has_event_chain = "extradimensional_invasion_chain_2" }
  840. add_event_chain_counter = {
  841. event_chain = "extradimensional_invasion_chain_2"
  842. counter = "extradimensional_planets_2"
  843. amount = 1
  844. }
  845. }
  846. }
  847. else_if = {
  848. limit = { FROM = { is_country_type = extradimensional_3 } }
  849. every_country = {
  850. limit = { has_event_chain = "extradimensional_invasion_chain_3" }
  851. add_event_chain_counter = {
  852. event_chain = "extradimensional_invasion_chain_3"
  853. counter = "extradimensional_planets_3"
  854. amount = 1
  855. }
  856. }
  857. }
  858. }
  859.  
  860. option = {
  861. name = crisis.1011.a
  862. }
  863. }
  864.  
  865. # Portal Destroyed (HIDDEN)
  866. country_event = {
  867. id = crisis.1012
  868. hide_window = yes
  869.  
  870. fire_only_once = yes
  871. is_triggered_only = yes
  872.  
  873. trigger = {
  874. is_country_type = extradimensional
  875. FROMFROM = { is_ship_size = dimensional_portal_ed }
  876. }
  877.  
  878. immediate = {
  879. if = {
  880. limit = {
  881. OR = {
  882. NOT = { has_global_flag = extradimensional_second_portal }
  883. AND = {
  884. has_global_flag = extradimensional_second_portal_destroyed
  885. has_global_flag = extradimensional_third_portal_destroyed
  886. }
  887. }
  888. }
  889. stop_crisis_sound = yes
  890. FROM = {
  891. save_event_target_as = portal_killer
  892. if = {
  893. limit = { is_ai = no }
  894. country_event = { id = crisis.1250 days = 10 random = 10 }
  895. }
  896. }
  897. observer_event = { id = observer.35 }
  898. every_playable_country = {
  899. if = {
  900. limit = { has_communications = FROM }
  901. add_opinion_modifier = {
  902. who = FROM
  903. modifier = opinion_destroyed_portal
  904. }
  905. }
  906. add_modifier = {
  907. modifier = "extradimensionals_defeated"
  908. days = 360
  909. }
  910. country_event = { id = crisis.1013 }
  911. }
  912. }
  913. else_if = {
  914. limit = {
  915. has_global_flag = extradimensional_second_portal
  916. NOR = {
  917. has_global_flag = extradimensional_second_portal_destroyed
  918. has_global_flag = extradimensional_third_portal_destroyed
  919. }
  920. }
  921. every_playable_country = {
  922. country_event = { id = crisis.1016 }
  923. }
  924. }
  925. }
  926. }
  927.  
  928. # Portal Destroyed
  929. country_event = {
  930. id = crisis.1013
  931. title = "crisis.1013.name"
  932. desc = "crisis.1013.desc"
  933. picture = GFX_evt_wormhole
  934. show_sound = event_super_explosion
  935.  
  936. is_triggered_only = yes
  937.  
  938. immediate = {
  939. random_system = {
  940. limit = { has_star_flag = extradimensional_origin_system }
  941. save_event_target_as = extradimensional_system
  942. }
  943. remove_point_of_interest = extradimensional_invasion_poi.1
  944. set_country_flag = extradimensionals_expunged
  945. }
  946.  
  947. option = {
  948. name = crisis.1013.a
  949. }
  950. }
  951.  
  952. # Portal Destroyed (Other Portals Exist)
  953. country_event = {
  954. id = crisis.1016
  955. title = "crisis.1016.name"
  956. desc = "crisis.1016.desc"
  957. picture = GFX_evt_wormhole
  958. show_sound = event_super_explosion
  959.  
  960. is_triggered_only = yes
  961.  
  962. immediate = {
  963. random_system = {
  964. limit = { has_star_flag = extradimensional_origin_system }
  965. save_event_target_as = extradimensional_system
  966. }
  967. set_global_flag = extradimensional_first_portal_destroyed
  968. remove_point_of_interest = extradimensional_invasion_poi.1
  969. }
  970.  
  971. option = {
  972. name = crisis.1016.a
  973. }
  974. }
  975.  
  976. # Unbidden Diplomacy
  977. country_event = {
  978. id = crisis.1050
  979. title = "TRANSMISSION"
  980.  
  981. desc = {
  982. text = crisis.1050.desc_01
  983. trigger = {
  984. NOR = { owner_species = { has_trait = trait_psionic has_trait = trait_mechanical } has_authority = auth_machine_intelligence }
  985. }
  986. }
  987. desc = {
  988. text = crisis.1050.desc_02
  989. trigger = {
  990. NOT = { owner_species = { has_trait = trait_psionic } }
  991. }
  992. }
  993. desc = {
  994. text = crisis.1050.desc_03
  995. trigger = {
  996. NOR = { owner_species = { has_trait = trait_psionic has_trait = trait_mechanical } has_authority = auth_machine_intelligence }
  997. }
  998. }
  999. desc = {
  1000. text = crisis.1050.desc_04
  1001. trigger = {
  1002. owner_species = { has_trait = trait_psionic }
  1003. }
  1004. }
  1005. desc = {
  1006. text = crisis.1050.desc_05
  1007. trigger = {
  1008. owner_species = { has_trait = trait_psionic }
  1009. }
  1010. }
  1011. desc = {
  1012. text = crisis.1050.desc_06
  1013. trigger = {
  1014. owner_species = { has_trait = trait_psionic }
  1015. }
  1016. }
  1017. desc = {
  1018. text = crisis.1050.desc_07
  1019. trigger = {
  1020. OR = {
  1021. owner_species = { has_trait = trait_mechanical }
  1022. has_authority = auth_machine_intelligence
  1023. }
  1024. }
  1025. }
  1026.  
  1027. diplomatic = yes
  1028. force_open = yes
  1029.  
  1030. picture_event_data = {
  1031. portrait = exd1
  1032. room = "extradimensional_room"
  1033. }
  1034.  
  1035. is_triggered_only = yes
  1036.  
  1037. trigger = {
  1038. FROM = {
  1039. is_country_type = extradimensional
  1040. }
  1041. }
  1042.  
  1043. option = {
  1044. name = crisis.1050.a
  1045. response_text = crisis.1050.a.response
  1046. trigger = {
  1047. NOR = {
  1048. has_authority = auth_machine_intelligence
  1049. owner_species = { has_trait = trait_mechanical }
  1050. }
  1051. }
  1052. }
  1053. option = {
  1054. name = crisis.1050.b
  1055. trigger = {
  1056. OR = {
  1057. has_ethic = "ethic_pacifist"
  1058. has_ethic = "ethic_fanatic_pacifist"
  1059. }
  1060. }
  1061. response_text = crisis.1050.b.response
  1062. }
  1063. option = {
  1064. name = crisis.1050.c
  1065. trigger = {
  1066. OR = {
  1067. has_ethic = "ethic_militarist"
  1068. has_ethic = "ethic_fanatic_militarist"
  1069. has_authority = auth_machine_intelligence
  1070. }
  1071. }
  1072. response_text = crisis.1050.c.response
  1073. }
  1074. option = {
  1075. name = crisis.1050.d
  1076. trigger = {
  1077. OR = {
  1078. has_ethic = "ethic_xenophobe"
  1079. has_ethic = "ethic_fanatic_xenophobe"
  1080. }
  1081. }
  1082. response_text = crisis.1050.d.response
  1083. }
  1084. option = {
  1085. name = crisis.1050.e
  1086. trigger = {
  1087. OR = {
  1088. has_ethic = "ethic_xenophile"
  1089. has_ethic = "ethic_fanatic_xenophile"
  1090. }
  1091. NOT = { owner_species = { has_trait = trait_mechanical } }
  1092. }
  1093. response_text = crisis.1050.e.response
  1094. }
  1095. option = {
  1096. name = crisis.1050.f
  1097. trigger = {
  1098. OR = {
  1099. has_ethic = "ethic_spiritualist"
  1100. has_ethic = "ethic_fanatic_spiritualist"
  1101. }
  1102. NOT = { owner_species = { has_trait = trait_psionic } }
  1103. }
  1104. response_text = crisis.1050.f.response
  1105. }
  1106. option = {
  1107. name = crisis.1050.g
  1108. trigger = {
  1109. owner_species = { has_trait = trait_psionic }
  1110. }
  1111. response_text = crisis.1050.g.response
  1112. }
  1113. option = {
  1114. name = crisis.1050.a
  1115. response_text = crisis.1050.a.b.response
  1116. trigger = {
  1117. OR = {
  1118. has_authority = auth_machine_intelligence
  1119. owner_species = { has_trait = trait_mechanical }
  1120. }
  1121. }
  1122. }
  1123. }
  1124.  
  1125. # Aberrant Diplomacy
  1126. country_event = {
  1127. id = crisis.1051
  1128. title = "TRANSMISSION"
  1129.  
  1130. desc = {
  1131. text = crisis.1051.desc_01
  1132. }
  1133. desc = {
  1134. text = crisis.1051.desc_02
  1135. }
  1136. desc = {
  1137. text = crisis.1051.desc_03
  1138. }
  1139.  
  1140. diplomatic = yes
  1141. force_open = yes
  1142.  
  1143. picture_event_data = {
  1144. portrait = exd2
  1145. room = "extradimensional_orange_room"
  1146. }
  1147.  
  1148. is_triggered_only = yes
  1149.  
  1150. trigger = {
  1151. FROM = {
  1152. is_country_type = extradimensional_2
  1153. }
  1154. }
  1155.  
  1156. option = {
  1157. name = crisis.1051.a
  1158. response_text = crisis.1051.a.response
  1159. }
  1160. }
  1161.  
  1162. # Vehement Diplomacy
  1163. country_event = {
  1164. id = crisis.1052
  1165. title = "TRANSMISSION"
  1166.  
  1167. desc = {
  1168. text = crisis.1052.desc_01
  1169. }
  1170. desc = {
  1171. text = crisis.1052.desc_02
  1172. }
  1173. desc = {
  1174. text = crisis.1052.desc_03
  1175. }
  1176.  
  1177. diplomatic = yes
  1178. force_open = yes
  1179.  
  1180. picture_event_data = {
  1181. portrait = exd3
  1182. room = "extradimensional_green_room"
  1183. }
  1184.  
  1185. is_triggered_only = yes
  1186.  
  1187. trigger = {
  1188. FROM = {
  1189. is_country_type = extradimensional_3
  1190. }
  1191. }
  1192.  
  1193. option = {
  1194. name = crisis.1052.a
  1195. response_text = crisis.1052.a.response
  1196. }
  1197. }
  1198.  
  1199. ### Second Portal
  1200.  
  1201. # Second Portal Appears (HIDDEN)
  1202. country_event = {
  1203. id = crisis.1100
  1204. hide_window = yes
  1205. fire_only_once = yes
  1206.  
  1207. trigger = {
  1208. is_country_type = extradimensional
  1209. NOT = { has_global_flag = extradimensional_second_portal }
  1210. galaxy_percentage > 0.15
  1211. }
  1212.  
  1213. mean_time_to_happen = {
  1214. months = 12
  1215. }
  1216.  
  1217. immediate = {
  1218. set_crisis_sound = extradimensional_crisis_ambient_stage_3
  1219. set_crisis_stage_3 = yes
  1220. set_global_flag = extradimensional_second_portal
  1221. random_system_within_border = {
  1222. limit = {
  1223. NOT = { has_star_flag = extradimensional_origin_system }
  1224. }
  1225. set_star_flag = extradimensional_second_portal_system
  1226. save_event_target_as = second_portal_system
  1227. random_system_planet = {
  1228. create_species = {
  1229. name = "NAME_Aberrant"
  1230. class = EXD
  1231. portrait = exd2
  1232. traits = random
  1233. effect = { save_event_target_as = extradimensional_hunters_species }
  1234. }
  1235. create_country = {
  1236. name = "NAME_Aberrant"
  1237. type = "extradimensional_2"
  1238. species = event_target:extradimensional_hunters_species
  1239. name_list = "Extradimensional"
  1240. flag = {
  1241. icon= {
  1242. category = "special"
  1243. file = "extradimensional_02.dds"
  1244. }
  1245. background= {
  1246. category = "backgrounds"
  1247. file = "triangle_split.dds"
  1248. }
  1249. colors={
  1250. "brown"
  1251. "orange"
  1252. "null"
  1253. "null"
  1254. }
  1255. }
  1256. effect = {
  1257. set_country_flag = aberrant
  1258. save_global_event_target_as = extradimensionals2
  1259. create_ship_design = { design = "NAME_Void_Former" }
  1260. add_ship_design = last_created_design
  1261. create_ship_design = { design = "NAME_Aberrant_Anchor" }
  1262. add_ship_design = last_created_design
  1263. establish_communications_no_message = event_target:portal_holder_1
  1264. set_faction_hostility = {
  1265. target = event_target:portal_holder_1
  1266. set_hostile = no
  1267. }
  1268. save_event_target_as = extradimensional_hunters
  1269. set_graphical_culture = extra_dimensional_02
  1270. }
  1271. }
  1272. event_target:extradimensional_hunters = {
  1273. create_fleet = {
  1274. name = "NAME_Dimensional_Portal"
  1275. effect = {
  1276. set_owner = PREV
  1277. create_ship = {
  1278. name = random
  1279. design = "NAME_Aberrant_Portal"
  1280. graphical_culture = "extra_dimensional_02"
  1281. effect = { set_ship_flag = aberrant_portal }
  1282. }
  1283. set_location = {
  1284. target = PREVPREV
  1285. distance = 40
  1286. angle = random
  1287. }
  1288. save_event_target_as = second_portal
  1289. fleet_event = { id = crisis.1103 days = 1 } # Fleet Arrives
  1290. fleet_event = { id = crisis.1103 days = 2 } # Fleet Arrives
  1291. fleet_event = { id = crisis.1103 days = 3 } # Fleet Arrives
  1292. fleet_event = { id = crisis.1103 days = 4 } # Fleet Arrives
  1293. fleet_event = { id = crisis.1103 days = 5 } # Fleet Arrives
  1294. fleet_event = { id = crisis.1103 days = 15 } # Fleet Arrives
  1295. fleet_event = { id = crisis.1103 days = 30 } # Fleet Arrives
  1296. fleet_event = { id = crisis.1103 days = 45 } # Fleet Arrives
  1297. fleet_event = { id = crisis.1103 days = 60 } # Fleet Arrives
  1298. fleet_event = { id = crisis.1103 days = 150 } # Fleet Arrives
  1299. fleet_event = { id = crisis.1103 days = 350 } # Fleet Arrives
  1300. fleet_event = { id = crisis.1106 days = 20 } # Constructor Arrives
  1301. fleet_event = { id = crisis.1106 days = 25 } # Constructor Arrives
  1302. fleet_event = { id = crisis.1106 days = 90 } # Constructor Arrives
  1303. fleet_event = { id = crisis.1106 days = 210 } # Constructor Arrives
  1304. event_target:extradimensional_hunters = { country_event = { id = crisis.1260 days = 550 } } # Spawn Cycle starts
  1305. }
  1306. }
  1307. random_list = {
  1308. 25 = {
  1309. create_leader = {
  1310. class = admiral
  1311. species = event_target:extradimensional_hunters_species
  1312. name = random
  1313. skill = 3
  1314. traits = {
  1315. trait = leader_trait_ethereal
  1316. }
  1317. }
  1318. }
  1319. 25 = {
  1320. create_leader = {
  1321. class = admiral
  1322. species = event_target:extradimensional_hunters_species
  1323. name = random
  1324. skill = 3
  1325. traits = {
  1326. trait = leader_trait_dimensional_stutter
  1327. }
  1328. }
  1329. }
  1330. 50 = {
  1331. create_leader = {
  1332. class = admiral
  1333. species = event_target:extradimensional_hunters_species
  1334. name = random
  1335. skill = 3
  1336. }
  1337. }
  1338. }
  1339. create_fleet = {
  1340. effect = {
  1341. set_owner = PREV
  1342. create_ship = {
  1343. name = random
  1344. design = "NAME_Huntress"
  1345. graphical_culture = "extra_dimensional_02"
  1346. }
  1347. assign_leader = last_created_leader
  1348. while = {
  1349. count = 20
  1350. create_ship = {
  1351. name = random
  1352. design = "NAME_Huntress"
  1353. graphical_culture = "extra_dimensional_02"
  1354. }
  1355. }
  1356. while = {
  1357. count = 30
  1358. create_ship = {
  1359. name = random
  1360. design = "NAME_Assassin"
  1361. graphical_culture = "extra_dimensional_02"
  1362. }
  1363. }
  1364. while = {
  1365. count = 45
  1366. create_ship = {
  1367. name = random
  1368. design = "NAME_Predator"
  1369. graphical_culture = "extra_dimensional_02"
  1370. }
  1371. }
  1372. set_location = {
  1373. target = event_target:second_portal
  1374. distance = 5
  1375. angle = random
  1376. }
  1377. set_fleet_stance = aggressive
  1378. set_aggro_range = 500
  1379. set_aggro_range_measure_from = self
  1380. }
  1381. }
  1382. }
  1383. }
  1384. if = {
  1385. limit = { exists = starbase }
  1386. starbase = { fleet = { destroy_fleet = this } }
  1387. }
  1388. create_starbase = {
  1389. size = starbase_exd
  1390. owner = event_target:extradimensionals2
  1391. }
  1392. }
  1393. observer_event = { id = observer.36 }
  1394. # make portal invincible
  1395. event_target:extradimensionals2 = {
  1396. random_owned_ship = { ship_event = { id = crisis.1280 } }
  1397. }
  1398. every_country = {
  1399. limit = {
  1400. OR = {
  1401. is_country_type = default
  1402. is_country_type = fallen_empire
  1403. is_country_type = awakened_fallen_empire
  1404. }
  1405. }
  1406. country_event = { id = crisis.1110 days = 1 }
  1407. }
  1408. random_country = {
  1409. limit = { is_country_type = extradimensional_2 }
  1410. establish_communications_no_message = root
  1411. }
  1412. }
  1413. }
  1414.  
  1415. # Fleet Reinforcements
  1416. fleet_event = {
  1417. id = crisis.1103
  1418. hide_window = yes
  1419.  
  1420. is_triggered_only = yes
  1421.  
  1422. immediate = {
  1423. event_target:extradimensional_hunters = {
  1424. random_list = {
  1425. 25 = {
  1426. create_leader = {
  1427. class = admiral
  1428. species = event_target:extradimensional_hunters_species
  1429. name = random
  1430. skill = 3
  1431. traits = {
  1432. trait = leader_trait_ethereal
  1433. }
  1434. }
  1435. }
  1436. 25 = {
  1437. create_leader = {
  1438. class = admiral
  1439. species = event_target:extradimensional_hunters_species
  1440. name = random
  1441. skill = 3
  1442. traits = {
  1443. trait = leader_trait_dimensional_stutter
  1444. }
  1445. }
  1446. }
  1447. 50 = {
  1448. create_leader = {
  1449. class = admiral
  1450. species = event_target:extradimensional_hunters_species
  1451. name = random
  1452. skill = 3
  1453. }
  1454. }
  1455. }
  1456. create_fleet = {
  1457. effect = {
  1458. set_owner = PREV
  1459. create_ship = {
  1460. name = random
  1461. design = "NAME_Huntress"
  1462. graphical_culture = "extra_dimensional_02"
  1463. }
  1464. assign_leader = last_created_leader
  1465. while = {
  1466. count = 8
  1467. create_ship = {
  1468. name = random
  1469. design = "NAME_Huntress"
  1470. graphical_culture = "extra_dimensional_02"
  1471. }
  1472. }
  1473. while = {
  1474. count = 12
  1475. create_ship = {
  1476. name = random
  1477. design = "NAME_Assassin"
  1478. graphical_culture = "extra_dimensional_02"
  1479. }
  1480. }
  1481. while = {
  1482. count = 20
  1483. create_ship = {
  1484. name = random
  1485. design = "NAME_Predator"
  1486. graphical_culture = "extra_dimensional_02"
  1487. }
  1488. }
  1489. set_location = {
  1490. target = ROOT
  1491. distance = 5
  1492. angle = random
  1493. }
  1494. set_fleet_stance = aggressive
  1495. set_aggro_range = 500
  1496. set_aggro_range_measure_from = self
  1497. }
  1498. }
  1499. }
  1500. }
  1501. }
  1502.  
  1503. # Constructor
  1504. fleet_event = {
  1505. id = crisis.1106
  1506. hide_window = yes
  1507.  
  1508. is_triggered_only = yes
  1509.  
  1510. immediate = {
  1511. event_target:extradimensional_hunters = {
  1512. create_fleet = {
  1513. effect = {
  1514. set_owner = PREV
  1515. create_ship = {
  1516. name = random
  1517. design = "NAME_Void_Former"
  1518. graphical_culture = "extra_dimensional_02"
  1519. }
  1520. set_location = {
  1521. target = ROOT
  1522. distance = 5
  1523. angle = random
  1524. }
  1525. }
  1526. }
  1527. }
  1528. }
  1529. }
  1530.  
  1531. # Second Portal Notification
  1532. country_event = {
  1533. id = crisis.1110
  1534. title = "crisis.1110.name"
  1535. desc = "crisis.1110.desc"
  1536. picture = GFX_evt_wormhole
  1537. show_sound = event_ex_started
  1538. location = event_target:second_portal_system
  1539.  
  1540. is_triggered_only = yes
  1541.  
  1542. immediate = {
  1543. random_country = {
  1544. limit = { is_country_type = extradimensional_2 }
  1545. establish_communications_no_message = ROOT
  1546. }
  1547. }
  1548.  
  1549. option = {
  1550. name = crisis.1110.a
  1551. begin_event_chain = {
  1552. event_chain = "extradimensional_invasion_chain_2"
  1553. target = ROOT
  1554. }
  1555. create_point_of_interest = {
  1556. id = extradimensional_invasion_poi.2
  1557. name = "extradimensional_invasion_2_poi"
  1558. desc = "extradimensional_invasion_2_poi_desc"
  1559. event_chain = "extradimensional_invasion_chain_2"
  1560. location = event_target:second_portal_system
  1561. }
  1562. hidden_effect = {
  1563. add_event_chain_counter = {
  1564. event_chain = "extradimensional_invasion_chain_2"
  1565. counter = "dimensional_anchors_2"
  1566. amount = 1
  1567. }
  1568. }
  1569. }
  1570. }
  1571.  
  1572. # Extradimensionals Fight Each Other (HIDDEN)
  1573. country_event = {
  1574. id = crisis.1111
  1575. hide_window = yes
  1576. fire_only_once = yes
  1577.  
  1578. is_triggered_only = yes
  1579.  
  1580. trigger = {
  1581. exists = from
  1582. NOT = { has_global_flag = extradimensionals_fight }
  1583. OR = {
  1584. is_country_type = extradimensional
  1585. is_country_type = extradimensional_2
  1586. }
  1587. FROM = {
  1588. OR = {
  1589. is_country_type = extradimensional
  1590. is_country_type = extradimensional_2
  1591. }
  1592. }
  1593. }
  1594.  
  1595. immediate = {
  1596. set_global_flag = extradimensionals_fight
  1597. every_country = {
  1598. limit = {
  1599. is_country_type = default
  1600. }
  1601. country_event = { id = crisis.1112 }
  1602. }
  1603. }
  1604. }
  1605.  
  1606. # Extradimensionals Fight Each Other
  1607. country_event = {
  1608. id = crisis.1112
  1609. title = "crisis.1112.name"
  1610. desc = "crisis.1112.desc"
  1611. picture = GFX_evt_wormhole
  1612. show_sound = event_alien_signal
  1613.  
  1614. is_triggered_only = yes
  1615.  
  1616. option = {
  1617. name = crisis.1112.a
  1618. hidden_effect = {
  1619. country_event = { id = crisis.1113 }
  1620. }
  1621. }
  1622. }
  1623.  
  1624. # Transmission from Second Portal
  1625. country_event = {
  1626. id = crisis.1113
  1627. title = "TRANSMISSION"
  1628. desc = "crisis.1113.desc"
  1629.  
  1630. diplomatic = yes
  1631.  
  1632. picture_event_data = {
  1633. portrait = exd2
  1634. room = "extradimensional_orange_room"
  1635. }
  1636.  
  1637. is_triggered_only = yes
  1638.  
  1639. option = {
  1640. name = crisis.1113.a
  1641. }
  1642. }
  1643.  
  1644. # Second Portal Destroyed (HIDDEN)
  1645. country_event = {
  1646. id = crisis.1115
  1647. hide_window = yes
  1648.  
  1649. fire_only_once = yes
  1650. is_triggered_only = yes
  1651.  
  1652. trigger = {
  1653. is_country_type = extradimensional_2
  1654. FROMFROM = { is_ship_size = dimensional_portal_ed }
  1655. }
  1656.  
  1657. immediate = {
  1658. observer_event = { id = observer.37 }
  1659. if = {
  1660. limit = {
  1661. has_global_flag = extradimensional_first_portal_destroyed
  1662. has_global_flag = extradimensional_third_portal_destroyed
  1663. }
  1664. stop_crisis_sound = yes
  1665. every_country = {
  1666. limit = {
  1667. is_country_type = default
  1668. }
  1669. country_event = { id = crisis.1116 }
  1670. }
  1671. FROM = { save_event_target_as = portal_killer }
  1672. if = {
  1673. limit = {
  1674. from = { is_ai = no }
  1675. }
  1676. country_event = { id = crisis.1250 days = 10 random = 10 }
  1677. }
  1678. every_country = {
  1679. limit = {
  1680. is_country_type = default
  1681. has_communications = FROM
  1682. }
  1683. add_opinion_modifier = {
  1684. who = FROM
  1685. modifier = opinion_destroyed_portal
  1686. }
  1687. }
  1688. every_country = {
  1689. limit = { is_country_type = default }
  1690. add_modifier = {
  1691. modifier = "extradimensionals_defeated"
  1692. days = 360
  1693. }
  1694. }
  1695. }
  1696. else = {
  1697. every_country = {
  1698. limit = {
  1699. is_country_type = default
  1700. }
  1701. country_event = { id = crisis.1117 }
  1702. }
  1703. }
  1704. }
  1705. }
  1706.  
  1707. # Second Portal Destroyed
  1708. country_event = {
  1709. id = crisis.1116
  1710. title = "crisis.1116.name"
  1711. picture = GFX_evt_wormhole
  1712. show_sound = event_super_explosion
  1713.  
  1714. desc = {
  1715. text = "crisis.1116.desc.a"
  1716. trigger = {
  1717. has_communications = event_target:portal_killer
  1718. }
  1719. }
  1720. desc = {
  1721. text = "crisis.1116.desc.b"
  1722. trigger = {
  1723. NOT = { has_communications = event_target:portal_killer }
  1724. }
  1725. }
  1726.  
  1727. is_triggered_only = yes
  1728.  
  1729. immediate = {
  1730. random_system = {
  1731. limit = { has_star_flag = extradimensional_second_portal_system }
  1732. save_event_target_as = extradimensional_system
  1733. }
  1734. remove_point_of_interest = extradimensional_invasion_poi.2
  1735. set_country_flag = extradimensionals_expunged
  1736. }
  1737.  
  1738. option = {
  1739. name = crisis.1013.a
  1740. }
  1741. }
  1742.  
  1743. # Second Portal Destroyed (Other Portals Exist)
  1744. country_event = {
  1745. id = crisis.1117
  1746. title = "crisis.1116.name"
  1747. desc = "crisis.1117.desc"
  1748. picture = GFX_evt_wormhole
  1749. show_sound = event_super_explosion
  1750.  
  1751. is_triggered_only = yes
  1752.  
  1753. immediate = {
  1754. random_system = {
  1755. limit = { has_star_flag = extradimensional_second_portal_system }
  1756. save_event_target_as = extradimensional_system
  1757. }
  1758. set_global_flag = extradimensional_second_portal_destroyed
  1759. remove_point_of_interest = extradimensional_invasion_poi.2
  1760. }
  1761.  
  1762. option = {
  1763. name = crisis.1016.a
  1764. }
  1765. }
  1766.  
  1767. ### Third Portal
  1768.  
  1769. # Third Portal Appears (HIDDEN)
  1770. country_event = {
  1771. id = crisis.1200
  1772. hide_window = yes
  1773. fire_only_once = yes
  1774.  
  1775. trigger = {
  1776. has_global_flag = extradimensionals_fight
  1777. NOT = { has_global_flag = extradimensional_third_portal }
  1778. is_country_type = extradimensional_2
  1779. any_country = { is_country_type = extradimensional }
  1780. }
  1781.  
  1782. mean_time_to_happen = {
  1783. months = 40
  1784. }
  1785.  
  1786. immediate = {
  1787. set_global_flag = extradimensional_third_portal
  1788. random_country = {
  1789. limit = { is_country_type = extradimensional }
  1790. random_system_within_border = {
  1791. limit = {
  1792. NOR = {
  1793. has_star_flag = extradimensional_origin_system
  1794. has_star_flag = extradimensional_second_portal_system
  1795. }
  1796. }
  1797. set_star_flag = extradimensional_third_portal_system
  1798. save_event_target_as = third_portal_system
  1799. random_system_planet = {
  1800. create_species = {
  1801. name = "NAME_Vehement"
  1802. class = EXD
  1803. portrait = exd3
  1804. traits = random
  1805. effect = { save_event_target_as = extradimensional_trespassers_species }
  1806. }
  1807. create_country = {
  1808. name = "NAME_Vehement"
  1809. type = "extradimensional_3"
  1810. species = event_target:extradimensional_trespassers_species
  1811. name_list = "Extradimensional"
  1812. flag = {
  1813. icon= {
  1814. category = "special"
  1815. file = "extradimensional_03.dds"
  1816. }
  1817. background= {
  1818. category = "backgrounds"
  1819. file = "stripe.dds"
  1820. }
  1821. colors={
  1822. "green"
  1823. "teal"
  1824. "null"
  1825. "null"
  1826. }
  1827. }
  1828. effect = {
  1829. set_country_flag = vehement
  1830. save_global_event_target_as = extradimensionals3
  1831. create_ship_design = { design = "NAME_Void_Weaver" }
  1832. add_ship_design = last_created_design
  1833. create_ship_design = { design = "NAME_Vehement_Anchor" }
  1834. add_ship_design = last_created_design
  1835. establish_communications_no_message = event_target:portal_holder_1
  1836. set_faction_hostility = {
  1837. target = event_target:portal_holder_1
  1838. set_hostile = no
  1839. }
  1840. set_graphical_culture = extra_dimensional_03
  1841. save_event_target_as = extradimensional_trespassers
  1842. }
  1843. }
  1844. event_target:extradimensional_trespassers = {
  1845. create_fleet = {
  1846. name = "NAME_Dimensional_Portal"
  1847. effect = {
  1848. set_owner = PREV
  1849. create_ship = {
  1850. name = random
  1851. design = "NAME_Vehement_Portal"
  1852. graphical_culture = "extra_dimensional_03"
  1853. effect = { set_ship_flag = vehement_portal }
  1854. }
  1855. set_location = {
  1856. target = PREVPREV
  1857. distance = 40
  1858. angle = random
  1859. }
  1860. save_event_target_as = third_portal
  1861. fleet_event = { id = crisis.1203 days = 1 } # Fleet Arrives
  1862. fleet_event = { id = crisis.1203 days = 2 } # Fleet Arrives
  1863. fleet_event = { id = crisis.1203 days = 3 } # Fleet Arrives
  1864. fleet_event = { id = crisis.1203 days = 4 } # Fleet Arrives
  1865. fleet_event = { id = crisis.1203 days = 5 } # Fleet Arrives
  1866. fleet_event = { id = crisis.1203 days = 15 } # Fleet Arrives
  1867. fleet_event = { id = crisis.1203 days = 30 } # Fleet Arrives
  1868. fleet_event = { id = crisis.1203 days = 45 } # Fleet Arrives
  1869. fleet_event = { id = crisis.1203 days = 60 } # Fleet Arrives
  1870. fleet_event = { id = crisis.1203 days = 150 } # Fleet Arrives
  1871. fleet_event = { id = crisis.1203 days = 350 } # Fleet Arrives
  1872. fleet_event = { id = crisis.1206 days = 20 } # Constructor Arrives
  1873. fleet_event = { id = crisis.1206 days = 25 } # Constructor Arrives
  1874. fleet_event = { id = crisis.1206 days = 90 } # Constructor Arrives
  1875. fleet_event = { id = crisis.1206 days = 210 } # Constructor Arrives
  1876. event_target:extradimensional_trespassers = { country_event = { id = crisis.1260 days = 550 } } # Spawn Cycle starts
  1877. }
  1878. }
  1879. random_list = {
  1880. 25 = {
  1881. create_leader = {
  1882. class = admiral
  1883. species = event_target:extradimensional_trespassers_species
  1884. name = random
  1885. skill = 3
  1886. traits = {
  1887. trait = leader_trait_ethereal
  1888. }
  1889. }
  1890. }
  1891. 25 = {
  1892. create_leader = {
  1893. class = admiral
  1894. species = event_target:extradimensional_trespassers_species
  1895. name = random
  1896. skill = 3
  1897. traits = {
  1898. trait = leader_trait_dimensional_stutter
  1899. }
  1900. }
  1901. }
  1902. 50 = {
  1903. create_leader = {
  1904. class = admiral
  1905. species = event_target:extradimensional_trespassers_species
  1906. name = random
  1907. skill = 3
  1908. }
  1909. }
  1910. }
  1911. create_fleet = {
  1912. effect = {
  1913. set_owner = PREV
  1914. create_ship = {
  1915. name = random
  1916. design = "NAME_Eradicator"
  1917. graphical_culture = "extra_dimensional_03"
  1918. }
  1919. assign_leader = last_created_leader
  1920. while = {
  1921. count = 20
  1922. create_ship = {
  1923. name = random
  1924. design = "NAME_Eradicator"
  1925. graphical_culture = "extra_dimensional_03"
  1926. }
  1927. }
  1928. while = {
  1929. count = 30
  1930. create_ship = {
  1931. name = random
  1932. design = "NAME_Annihilator"
  1933. graphical_culture = "extra_dimensional_03"
  1934. }
  1935. }
  1936. while = {
  1937. count = 45
  1938. create_ship = {
  1939. name = random
  1940. design = "NAME_Obliterator"
  1941. graphical_culture = "extra_dimensional_03"
  1942. }
  1943. }
  1944. set_location = {
  1945. target = event_target:third_portal
  1946. distance = 5
  1947. angle = random
  1948. }
  1949. set_fleet_stance = aggressive
  1950. set_aggro_range = 500
  1951. set_aggro_range_measure_from = self
  1952. }
  1953. }
  1954. }
  1955. }
  1956. if = {
  1957. limit = { exists = starbase }
  1958. starbase = { fleet = { destroy_fleet = this } }
  1959. }
  1960. create_starbase = {
  1961. size = starbase_exd
  1962. owner = event_target:extradimensionals3
  1963. }
  1964. }
  1965. establish_communications_no_message = event_target:extradimensional_trespassers
  1966. }
  1967. observer_event = { id = observer.38 }
  1968. # make portal invincible
  1969. event_target:extradimensionals3 = {
  1970. random_owned_ship = { ship_event = { id= crisis.1280 } }
  1971. }
  1972. every_country = {
  1973. limit = {
  1974. OR = {
  1975. is_country_type = default
  1976. is_country_type = fallen_empire
  1977. is_country_type = awakened_fallen_empire
  1978. }
  1979. }
  1980. country_event = { id = crisis.1210 days = 1 }
  1981. }
  1982. establish_communications_no_message = event_target:extradimensional_trespassers
  1983. }
  1984. }
  1985.  
  1986. # Fleet Reinforcements
  1987. fleet_event = {
  1988. id = crisis.1203
  1989. hide_window = yes
  1990.  
  1991. is_triggered_only = yes
  1992.  
  1993. immediate = {
  1994. event_target:extradimensional_trespassers = {
  1995. random_list = {
  1996. 25 = {
  1997. create_leader = {
  1998. class = admiral
  1999. species = event_target:extradimensional_trespassers_species
  2000. name = random
  2001. skill = 3
  2002. traits = {
  2003. trait = leader_trait_ethereal
  2004. }
  2005. }
  2006. }
  2007. 25 = {
  2008. create_leader = {
  2009. class = admiral
  2010. species = event_target:extradimensional_trespassers_species
  2011. name = random
  2012. skill = 3
  2013. traits = {
  2014. trait = leader_trait_dimensional_stutter
  2015. }
  2016. }
  2017. }
  2018. 50 = {
  2019. create_leader = {
  2020. class = admiral
  2021. species = event_target:extradimensional_trespassers_species
  2022. name = random
  2023. skill = 3
  2024. }
  2025. }
  2026. }
  2027. create_fleet = {
  2028. effect = {
  2029. set_owner = PREV
  2030. create_ship = {
  2031. name = random
  2032. design = "NAME_Eradicator"
  2033. graphical_culture = "extra_dimensional_03"
  2034. }
  2035. assign_leader = last_created_leader
  2036. while = {
  2037. count = 8
  2038. create_ship = {
  2039. name = random
  2040. design = "NAME_Eradicator"
  2041. graphical_culture = "extra_dimensional_03"
  2042. }
  2043. }
  2044. while = {
  2045. count = 12
  2046. create_ship = {
  2047. name = random
  2048. design = "NAME_Annihilator"
  2049. graphical_culture = "extra_dimensional_03"
  2050. }
  2051. }
  2052. while = {
  2053. count = 20
  2054. create_ship = {
  2055. name = random
  2056. design = "NAME_Obliterator"
  2057. graphical_culture = "extra_dimensional_03"
  2058. }
  2059. }
  2060. set_location = {
  2061. target = ROOT
  2062. distance = 5
  2063. angle = random
  2064. }
  2065. set_fleet_stance = aggressive
  2066. set_aggro_range = 500
  2067. set_aggro_range_measure_from = self
  2068. }
  2069. }
  2070. }
  2071. }
  2072. }
  2073.  
  2074. # Constructor
  2075. fleet_event = {
  2076. id = crisis.1206
  2077. hide_window = yes
  2078.  
  2079. is_triggered_only = yes
  2080.  
  2081. immediate = {
  2082. event_target:extradimensional_trespassers = {
  2083. create_fleet = {
  2084. effect = {
  2085. set_owner = PREV
  2086. create_ship = {
  2087. name = random
  2088. design = "NAME_Void_Weaver"
  2089. graphical_culture = "extra_dimensional_03"
  2090. }
  2091. set_location = {
  2092. target = ROOT
  2093. distance = 5
  2094. angle = random
  2095. }
  2096. }
  2097. }
  2098. }
  2099. }
  2100. }
  2101.  
  2102. # Third Portal Notification
  2103. country_event = {
  2104. id = crisis.1210
  2105. title = "crisis.1210.name"
  2106. desc = "crisis.1210.desc"
  2107. picture = GFX_evt_wormhole
  2108. show_sound = event_ex_started
  2109. location = event_target:third_portal_system
  2110.  
  2111. is_triggered_only = yes
  2112.  
  2113. immediate = {
  2114. random_country = {
  2115. limit = { is_country_type = extradimensional_3 }
  2116. establish_communications_no_message = ROOT
  2117. }
  2118. }
  2119.  
  2120. option = {
  2121. name = crisis.1210.a
  2122. begin_event_chain = {
  2123. event_chain = "extradimensional_invasion_chain_3"
  2124. target = ROOT
  2125. }
  2126. create_point_of_interest = {
  2127. id = extradimensional_invasion_poi.3
  2128. name = "extradimensional_invasion_3_poi"
  2129. desc = "extradimensional_invasion_3_poi_desc"
  2130. event_chain = "extradimensional_invasion_chain_3"
  2131. location = event_target:third_portal_system
  2132. }
  2133. hidden_effect = {
  2134. hidden_effect = {
  2135. add_event_chain_counter = {
  2136. event_chain = "extradimensional_invasion_chain_3"
  2137. counter = "dimensional_anchors_3"
  2138. amount = 1
  2139. }
  2140. country_event = { id = crisis.1211 }
  2141. }
  2142. }
  2143. }
  2144. }
  2145.  
  2146. # Transmission from Third Portal
  2147. country_event = {
  2148. id = crisis.1211
  2149. title = "TRANSMISSION"
  2150. desc = "crisis.1211.desc"
  2151.  
  2152. diplomatic = yes
  2153.  
  2154. picture_event_data = {
  2155. portrait = exd3
  2156. room = "extradimensional_green_room"
  2157. }
  2158.  
  2159. is_triggered_only = yes
  2160.  
  2161. option = {
  2162. name = crisis.1211.a
  2163. }
  2164. }
  2165.  
  2166. # Third Portal Destroyed (HIDDEN)
  2167. country_event = {
  2168. id = crisis.1215
  2169. hide_window = yes
  2170.  
  2171. fire_only_once = yes
  2172. is_triggered_only = yes
  2173.  
  2174. trigger = {
  2175. is_country_type = extradimensional_3
  2176. FROMFROM = { is_ship_size = dimensional_portal_ed }
  2177. }
  2178.  
  2179. immediate = {
  2180. observer_event = { id = observer.39 }
  2181. if = {
  2182. limit = {
  2183. has_global_flag = extradimensional_first_portal_destroyed
  2184. has_global_flag = extradimensional_second_portal_destroyed
  2185. }
  2186. stop_crisis_sound = yes
  2187. every_country = {
  2188. limit = {
  2189. is_country_type = default
  2190. }
  2191. country_event = { id = crisis.1216 }
  2192. }
  2193. FROM = { save_event_target_as = portal_killer }
  2194. if = {
  2195. limit = {
  2196. from = { is_ai = no }
  2197. }
  2198. country_event = { id = crisis.1250 days = 10 random = 10 }
  2199. }
  2200. every_country = {
  2201. limit = {
  2202. is_country_type = default
  2203. has_communications = FROM
  2204. }
  2205. add_opinion_modifier = {
  2206. who = FROM
  2207. modifier = opinion_destroyed_portal
  2208. }
  2209. }
  2210. every_country = {
  2211. limit = { is_country_type = default }
  2212. add_modifier = {
  2213. modifier = "extradimensionals_defeated"
  2214. days = 360
  2215. }
  2216. }
  2217. }
  2218. else = {
  2219. every_country = {
  2220. limit = {
  2221. is_country_type = default
  2222. }
  2223. country_event = { id = crisis.1217 }
  2224. }
  2225. }
  2226. }
  2227. }
  2228.  
  2229. # Third Portal Destroyed
  2230. country_event = {
  2231. id = crisis.1216
  2232. title = "crisis.1216.name"
  2233. picture = GFX_evt_wormhole
  2234. show_sound = event_super_explosion
  2235.  
  2236. desc = {
  2237. text = "crisis.1216.desc.a"
  2238. trigger = {
  2239. has_communications = event_target:portal_killer
  2240. }
  2241. }
  2242. desc = {
  2243. text = "crisis.1216.desc.b"
  2244. trigger = {
  2245. NOT = { has_communications = event_target:portal_killer }
  2246. }
  2247. }
  2248.  
  2249. is_triggered_only = yes
  2250.  
  2251. immediate = {
  2252. random_system = {
  2253. limit = { has_star_flag = extradimensional_third_portal_system }
  2254. save_event_target_as = extradimensional_system
  2255. }
  2256. remove_point_of_interest = extradimensional_invasion_poi.3
  2257. set_country_flag = extradimensionals_expunged
  2258. }
  2259.  
  2260. option = {
  2261. name = crisis.1013.a
  2262. }
  2263. }
  2264.  
  2265. # Third Portal Destroyed (Other Portals Exist)
  2266. country_event = {
  2267. id = crisis.1217
  2268. title = "crisis.1216.name"
  2269. desc = "crisis.1217.desc"
  2270. picture = GFX_evt_wormhole
  2271. show_sound = event_super_explosion
  2272.  
  2273. is_triggered_only = yes
  2274.  
  2275. immediate = {
  2276. random_system = {
  2277. limit = { has_star_flag = extradimensional_third_portal_system }
  2278. save_event_target_as = extradimensional_system
  2279. }
  2280. set_global_flag = extradimensional_third_portal_destroyed
  2281. remove_point_of_interest = extradimensional_invasion_poi.3
  2282. }
  2283.  
  2284. option = {
  2285. name = crisis.1016.a
  2286. }
  2287. }
  2288.  
  2289. # Destroy EXDs if no portals and only 5 or less ships remain
  2290. # On yearly pulse
  2291. event = {
  2292. id = crisis.1254
  2293. hide_window = yes
  2294.  
  2295. is_triggered_only = yes
  2296.  
  2297. trigger = {
  2298. any_country = {
  2299. OR = {
  2300. is_country_type = extradimensional
  2301. is_country_type = extradimensional_2
  2302. is_country_type = extradimensional_3
  2303. }
  2304. }
  2305. }
  2306.  
  2307. immediate = {
  2308. if = {
  2309. limit = {
  2310. any_country = {
  2311. OR = {
  2312. is_country_type = extradimensional
  2313. is_country_type = extradimensional_2
  2314. is_country_type = extradimensional_3
  2315. }
  2316. OR = {
  2317. AND = {
  2318. has_global_flag = extradimensional_first_portal_destroyed
  2319. NOT = { has_global_flag = extradimensional_second_portal }
  2320. NOT = { has_global_flag = extradimensional_third_portal }
  2321. }
  2322. AND = {
  2323. has_global_flag = extradimensional_first_portal_destroyed
  2324. has_global_flag = extradimensional_second_portal_destroyed
  2325. NOT = { has_global_flag = extradimensional_third_portal }
  2326. }
  2327. AND = {
  2328. has_global_flag = extradimensional_first_portal_destroyed
  2329. has_global_flag = extradimensional_second_portal_destroyed
  2330. has_global_flag = extradimensional_third_portal_destroyed
  2331. }
  2332. }
  2333.  
  2334. num_ships < 6
  2335.  
  2336. NOR = {
  2337. any_owned_ship = { is_ship_size = dimensional_portal_ed }
  2338. any_country = {
  2339. AND = {
  2340. is_country_type = portal_holder
  2341. any_owned_ship = { is_ship_size = dimensional_portal_ed }
  2342. }
  2343. }
  2344. }
  2345.  
  2346. NOT = {
  2347. any_system = {
  2348. any_system_planet = {
  2349. controller = {
  2350. OR = {
  2351. is_country_type = extradimensional
  2352. is_country_type = extradimensional_2
  2353. is_country_type = extradimensional_3
  2354. }
  2355. }
  2356. }
  2357. }
  2358. }
  2359.  
  2360. NOT = {
  2361. any_system = {
  2362. any_system_planet = {
  2363. owner = {
  2364. OR = {
  2365. is_country_type = extradimensional
  2366. is_country_type = extradimensional_2
  2367. is_country_type = extradimensional_3
  2368. }
  2369. }
  2370. }
  2371. }
  2372. }
  2373. }
  2374. }
  2375.  
  2376. every_country = {
  2377. limit = {
  2378. OR = {
  2379. is_country_type = extradimensional
  2380. is_country_type = extradimensional_2
  2381. is_country_type = extradimensional_3
  2382. }
  2383. }
  2384. destroy_country = yes
  2385. }
  2386. }
  2387. }
  2388. }
  2389.  
  2390. # Extradimensionals: Military Reinforcements Spawn Cycle (HIDDEN)
  2391. country_event = {
  2392. id = crisis.1260
  2393. hide_window = yes
  2394.  
  2395. is_triggered_only = yes
  2396.  
  2397. trigger = {
  2398. OR = {
  2399. is_country_type = extradimensional
  2400. is_country_type = extradimensional_2
  2401. is_country_type = extradimensional_3
  2402. }
  2403. OR = {
  2404. count_owned_ships = {
  2405. limit = { is_ship_size = dimensional_portal_ed }
  2406. count > 0
  2407. }
  2408. any_country = {
  2409. is_country_type = portal_holder
  2410. count_owned_ships = {
  2411. limit = { is_ship_size = dimensional_portal_ed }
  2412. count > 0
  2413. }
  2414. }
  2415. }
  2416. }
  2417.  
  2418.  
  2419. immediate = {
  2420. # Spawn Construction Ships if needed
  2421. country_event = { id = crisis.1266 days = 6 }
  2422. # If at fleet cap
  2423. if = {
  2424. limit = {
  2425. num_ships > 2000
  2426. }
  2427. country_event = { id = crisis.1260 days = 600 random = 200 } # Check again later
  2428. }
  2429. # If no Anchors
  2430. else_if = {
  2431. limit = {
  2432. count_owned_ships = {
  2433. limit = { is_ship_size = starbase_exd }
  2434. count < 1
  2435. }
  2436. }
  2437. country_event = { id = crisis.1265 days = 1000 random = 100 }
  2438. }
  2439. else_if = {
  2440. limit = {
  2441. count_owned_ships = {
  2442. limit = { is_ship_size = starbase_exd }
  2443. count = 1
  2444. }
  2445. }
  2446. country_event = { id = crisis.1265 days = 900 random = 100 }
  2447. }
  2448. else_if = {
  2449. limit = {
  2450. count_owned_ships = {
  2451. limit = { is_ship_size = starbase_exd }
  2452. count = 2
  2453. }
  2454. }
  2455. country_event = { id = crisis.1265 days = 800 random = 100 }
  2456. }
  2457. else_if = {
  2458. limit = {
  2459. count_owned_ships = {
  2460. limit = { is_ship_size = starbase_exd }
  2461. count = 3
  2462. }
  2463. }
  2464. country_event = { id = crisis.1265 days = 700 random = 100 }
  2465. }
  2466. else_if = {
  2467. limit = {
  2468. count_owned_ships = {
  2469. limit = { is_ship_size = starbase_exd }
  2470. count >= 4
  2471. }
  2472. }
  2473. country_event = { id = crisis.1265 days = 600 random = 100 }
  2474. }
  2475. }
  2476. }
  2477.  
  2478. # Reinforcements Arrive (HIDDEN)
  2479. country_event = {
  2480. id = crisis.1265
  2481. hide_window = yes
  2482.  
  2483. is_triggered_only = yes
  2484.  
  2485. trigger = {
  2486. # Must only trigger if portal is still alive
  2487. OR = {
  2488. count_owned_ships = {
  2489. limit = { is_ship_size = dimensional_portal_ed }
  2490. count > 0
  2491. }
  2492. any_country = {
  2493. AND = {
  2494. is_country_type = portal_holder
  2495. count_owned_ships = {
  2496. limit = { is_ship_size = dimensional_portal_ed }
  2497. count > 0
  2498. }
  2499. }
  2500. }
  2501. }
  2502. }
  2503.  
  2504. immediate = {
  2505. random_country = {
  2506. limit = { is_country_type = portal_holder }
  2507. random_owned_ship = {
  2508. limit = { is_ship_size = dimensional_portal_ed }
  2509. save_event_target_as = dimensional_portal
  2510. }
  2511. }
  2512. random_owned_ship = {
  2513. limit = { is_ship_size = dimensional_portal_ed }
  2514. save_event_target_as = dimensional_portal
  2515. }
  2516. owner_species = { save_event_target_as = extradimensional_species }
  2517. country_event = { id = crisis.1260 } # Restart spawn cycle
  2518.  
  2519. # Extradimensionals 1
  2520. if = {
  2521. limit = { is_country_type = extradimensional }
  2522.  
  2523. # Create Admiral
  2524. random_list = {
  2525. 25 = {
  2526. create_leader = {
  2527. class = admiral
  2528. species = event_target:extradimensional_species
  2529. name = random
  2530. skill = 3
  2531. traits = {
  2532. trait = leader_trait_ethereal
  2533. }
  2534. }
  2535. }
  2536. 25 = {
  2537. create_leader = {
  2538. class = admiral
  2539. species = event_target:extradimensional_species
  2540. name = random
  2541. skill = 3
  2542. traits = {
  2543. trait = leader_trait_dimensional_stutter
  2544. }
  2545. }
  2546. }
  2547. 50 = {
  2548. create_leader = {
  2549. class = admiral
  2550. species = event_target:extradimensional_species
  2551. name = random
  2552. skill = 3
  2553. }
  2554. }
  2555. }
  2556.  
  2557. # Create Fleet
  2558. create_fleet = {
  2559. effect = {
  2560. set_owner = ROOT
  2561. create_ship = {
  2562. name = random
  2563. design = "NAME_Revenant"
  2564. graphical_culture = "extra_dimensional_01"
  2565. }
  2566. assign_leader = last_created_leader
  2567. while = {
  2568. count = 5
  2569. create_ship = {
  2570. name = random
  2571. design = "NAME_Revenant"
  2572. graphical_culture = "extra_dimensional_01"
  2573. }
  2574. }
  2575. while = {
  2576. count = 8
  2577. create_ship = {
  2578. name = random
  2579. design = "NAME_Phantom"
  2580. graphical_culture = "extra_dimensional_01"
  2581. }
  2582. }
  2583. while = {
  2584. count = 15
  2585. create_ship = {
  2586. name = random
  2587. design = "NAME_Wraith"
  2588. graphical_culture = "extra_dimensional_01"
  2589. }
  2590. }
  2591. set_location = {
  2592. target = event_target:dimensional_portal
  2593. distance = 5
  2594. angle = random
  2595. }
  2596. set_fleet_stance = aggressive
  2597. set_aggro_range = 500
  2598. set_aggro_range_measure_from = self
  2599. }
  2600. }
  2601. }
  2602.  
  2603. # Extradimensionals 2
  2604. else_if = {
  2605. limit = { is_country_type = extradimensional_2 }
  2606.  
  2607. # Create Admiral
  2608. random_list = {
  2609. 25 = {
  2610. create_leader = {
  2611. class = admiral
  2612. species = event_target:extradimensional_species
  2613. name = random
  2614. skill = 3
  2615. traits = {
  2616. trait = leader_trait_ethereal
  2617. }
  2618. }
  2619. }
  2620. 25 = {
  2621. create_leader = {
  2622. class = admiral
  2623. species = event_target:extradimensional_species
  2624. name = random
  2625. skill = 3
  2626. traits = {
  2627. trait = leader_trait_dimensional_stutter
  2628. }
  2629. }
  2630. }
  2631. 50 = {
  2632. create_leader = {
  2633. class = admiral
  2634. species = event_target:extradimensional_species
  2635. name = random
  2636. skill = 3
  2637. }
  2638. }
  2639. }
  2640.  
  2641. # Create Fleet
  2642. create_fleet = {
  2643. effect = {
  2644. set_owner = ROOT
  2645. create_ship = {
  2646. name = random
  2647. design = "NAME_Huntress"
  2648. graphical_culture = "extra_dimensional_02"
  2649. }
  2650. assign_leader = last_created_leader
  2651. while = {
  2652. count = 5
  2653. create_ship = {
  2654. name = random
  2655. design = "NAME_Huntress"
  2656. graphical_culture = "extra_dimensional_02"
  2657. }
  2658. }
  2659. while = {
  2660. count = 8
  2661. create_ship = {
  2662. name = random
  2663. design = "NAME_Assassin"
  2664. graphical_culture = "extra_dimensional_02"
  2665. }
  2666. }
  2667. while = {
  2668. count = 15
  2669. create_ship = {
  2670. name = random
  2671. design = "NAME_Predator"
  2672. graphical_culture = "extra_dimensional_02"
  2673. }
  2674. }
  2675. set_location = {
  2676. target = event_target:second_portal
  2677. distance = 5
  2678. angle = random
  2679. }
  2680. set_fleet_stance = aggressive
  2681. set_aggro_range = 500
  2682. set_aggro_range_measure_from = self
  2683. }
  2684. }
  2685. }
  2686.  
  2687. # Extradimensionals 3
  2688. else_if = {
  2689. limit = { is_country_type = extradimensional_3 }
  2690.  
  2691. # Create Admiral
  2692. random_list = {
  2693. 25 = {
  2694. create_leader = {
  2695. class = admiral
  2696. species = event_target:extradimensional_species
  2697. name = random
  2698. skill = 3
  2699. traits = {
  2700. trait = leader_trait_ethereal
  2701. }
  2702. }
  2703. }
  2704. 25 = {
  2705. create_leader = {
  2706. class = admiral
  2707. species = event_target:extradimensional_species
  2708. name = random
  2709. skill = 3
  2710. traits = {
  2711. trait = leader_trait_dimensional_stutter
  2712. }
  2713. }
  2714. }
  2715. 50 = {
  2716. create_leader = {
  2717. class = admiral
  2718. species = event_target:extradimensional_species
  2719. name = random
  2720. skill = 3
  2721. }
  2722. }
  2723. }
  2724.  
  2725. # Create Fleet
  2726. create_fleet = {
  2727. effect = {
  2728. set_owner = ROOT
  2729. create_ship = {
  2730. name = random
  2731. design = "NAME_Eradicator"
  2732. graphical_culture = "extra_dimensional_03"
  2733. }
  2734. assign_leader = last_created_leader
  2735. while = {
  2736. count = 5
  2737. create_ship = {
  2738. name = random
  2739. design = "NAME_Eradicator"
  2740. graphical_culture = "extra_dimensional_03"
  2741. }
  2742. }
  2743. while = {
  2744. count = 8
  2745. create_ship = {
  2746. name = random
  2747. design = "NAME_Annihilator"
  2748. graphical_culture = "extra_dimensional_03"
  2749. }
  2750. }
  2751. while = {
  2752. count = 15
  2753. create_ship = {
  2754. name = random
  2755. design = "NAME_Obliterator"
  2756. graphical_culture = "extra_dimensional_03"
  2757. }
  2758. }
  2759. set_location = {
  2760. target = event_target:third_portal
  2761. distance = 5
  2762. angle = random
  2763. }
  2764. set_fleet_stance = aggressive
  2765. set_aggro_range = 500
  2766. set_aggro_range_measure_from = self
  2767. }
  2768. }
  2769. }
  2770. }
  2771. }
  2772.  
  2773. # Construction Ships Arrive if Needed (HIDDEN)
  2774. country_event = {
  2775. id = crisis.1266
  2776. hide_window = yes
  2777.  
  2778. is_triggered_only = yes
  2779.  
  2780. trigger = {
  2781. # Must only trigger if portal is still alive
  2782. OR = {
  2783. count_owned_ships = {
  2784. limit = { is_ship_size = dimensional_portal_ed }
  2785. count > 0
  2786. }
  2787. any_country = {
  2788. AND = {
  2789. is_country_type = portal_holder
  2790. count_owned_ships = {
  2791. limit = { is_ship_size = dimensional_portal_ed }
  2792. count > 0
  2793. }
  2794. }
  2795. }
  2796. }
  2797.  
  2798. count_owned_ships = {
  2799. limit = { is_ship_size = construction_ship_ed }
  2800. count < 10
  2801. }
  2802. }
  2803.  
  2804. immediate = {
  2805. # Extradimensionals 1
  2806. random_country = {
  2807. limit = { is_country_type = portal_holder }
  2808. random_owned_ship = {
  2809. limit = { is_ship_size = dimensional_portal_ed }
  2810. save_event_target_as = dimensional_portal
  2811. }
  2812. }
  2813. random_owned_ship = {
  2814. limit = { is_ship_size = dimensional_portal_ed }
  2815. save_event_target_as = dimensional_portal
  2816. }
  2817. if = {
  2818. limit = { is_country_type = extradimensional }
  2819. while = {
  2820. count = 2
  2821. create_fleet = {
  2822. effect = {
  2823. set_owner = ROOT
  2824. create_ship = {
  2825. name = random
  2826. design = "NAME_Void_Shaper"
  2827. graphical_culture = "extra_dimensional_01"
  2828. }
  2829. set_location = {
  2830. target = event_target:dimensional_portal
  2831. distance = 5
  2832. angle = random
  2833. }
  2834. }
  2835. }
  2836. }
  2837. }
  2838.  
  2839. # Extradimensionals 2
  2840. else_if = {
  2841. limit = { is_country_type = extradimensional_2 }
  2842. while = {
  2843. count = 2
  2844. create_fleet = {
  2845. effect = {
  2846. set_owner = ROOT
  2847. create_ship = {
  2848. name = random
  2849. design = "NAME_Void_Former"
  2850. graphical_culture = "extra_dimensional_02"
  2851. }
  2852. set_location = {
  2853. target = event_target:second_portal
  2854. distance = 5
  2855. angle = random
  2856. }
  2857. }
  2858. }
  2859. }
  2860. }
  2861.  
  2862. # Extradimensionals 3
  2863. else_if = {
  2864. limit = { is_country_type = extradimensional_3 }
  2865. while = {
  2866. count = 2
  2867. create_fleet = {
  2868. effect = {
  2869. set_owner = ROOT
  2870. create_ship = {
  2871. name = random
  2872. design = "NAME_Void_Weaver"
  2873. graphical_culture = "extra_dimensional_03"
  2874. }
  2875. set_location = {
  2876. target = event_target:third_portal
  2877. distance = 5
  2878. angle = random
  2879. }
  2880. }
  2881. }
  2882. }
  2883. }
  2884. }
  2885. }
  2886.  
  2887. # Reinforcements Arrive After Building Anchor (HIDDEN)
  2888. ship_event = {
  2889. id = crisis.1267
  2890. hide_window = yes
  2891.  
  2892. is_triggered_only = yes
  2893.  
  2894. trigger = {
  2895. #is_ship_size = starbase_exd # now implicit
  2896. owner = {
  2897. OR = {
  2898. is_country_type = extradimensional
  2899. is_country_type = extradimensional_2
  2900. is_country_type = extradimensional_3
  2901. }
  2902. # Must only trigger if portal is still alive
  2903. OR = {
  2904. count_owned_ships = {
  2905. limit = { is_ship_size = dimensional_portal_ed }
  2906. count > 0
  2907. }
  2908. any_country = {
  2909. AND = {
  2910. is_country_type = portal_holder
  2911. count_owned_ships = {
  2912. limit = { is_ship_size = dimensional_portal_ed }
  2913. count > 0
  2914. }
  2915. }
  2916. }
  2917. }
  2918. OR = {
  2919. is_country_type = extradimensional
  2920. is_country_type = extradimensional_2
  2921. is_country_type = extradimensional_3
  2922. }
  2923. num_ships < 2001
  2924. }
  2925. }
  2926.  
  2927. immediate = {
  2928. owner = {
  2929. country_event = { id = crisis.1266 days = 6 } # Spawn Construction Ships if needed
  2930. random_country = {
  2931. limit = { is_country_type = portal_holder }
  2932. random_owned_ship = {
  2933. limit = { is_ship_size = dimensional_portal_ed }
  2934. save_event_target_as = dimensional_portal
  2935. }
  2936. }
  2937. random_owned_ship = {
  2938. limit = { is_ship_size = dimensional_portal_ed }
  2939. save_event_target_as = dimensional_portal
  2940. }
  2941. owner_species = { save_event_target_as = extradimensional_species }
  2942.  
  2943. # Extradimensionals 1
  2944. if = {
  2945. limit = { is_country_type = extradimensional }
  2946.  
  2947. # Create Admiral
  2948. random_list = {
  2949. 25 = {
  2950. create_leader = {
  2951. class = admiral
  2952. species = event_target:extradimensional_species
  2953. name = random
  2954. skill = 3
  2955. traits = {
  2956. trait = leader_trait_ethereal
  2957. }
  2958. }
  2959. }
  2960. 25 = {
  2961. create_leader = {
  2962. class = admiral
  2963. species = event_target:extradimensional_species
  2964. name = random
  2965. skill = 3
  2966. traits = {
  2967. trait = leader_trait_dimensional_stutter
  2968. }
  2969. }
  2970. }
  2971. 50 = {
  2972. create_leader = {
  2973. class = admiral
  2974. species = event_target:extradimensional_species
  2975. name = random
  2976. skill = 3
  2977. }
  2978. }
  2979. }
  2980.  
  2981. # Create Fleet
  2982. create_fleet = {
  2983. effect = {
  2984. set_owner = ROOT.owner
  2985. create_ship = {
  2986. name = random
  2987. design = "NAME_Revenant"
  2988. graphical_culture = "extra_dimensional_01"
  2989. }
  2990. assign_leader = last_created_leader
  2991. while = {
  2992. count = 5
  2993. create_ship = {
  2994. name = random
  2995. design = "NAME_Revenant"
  2996. graphical_culture = "extra_dimensional_01"
  2997. }
  2998. }
  2999. while = {
  3000. count = 8
  3001. create_ship = {
  3002. name = random
  3003. design = "NAME_Phantom"
  3004. graphical_culture = "extra_dimensional_01"
  3005. }
  3006. }
  3007. while = {
  3008. count = 15
  3009. create_ship = {
  3010. name = random
  3011. design = "NAME_Wraith"
  3012. graphical_culture = "extra_dimensional_01"
  3013. }
  3014. }
  3015. set_location = {
  3016. target = event_target:dimensional_portal
  3017. distance = 5
  3018. angle = random
  3019. }
  3020. set_fleet_stance = aggressive
  3021. set_aggro_range = 500
  3022. set_aggro_range_measure_from = self
  3023. }
  3024. }
  3025. }
  3026.  
  3027. # Extradimensionals 2
  3028. else_if = {
  3029. limit = { is_country_type = extradimensional_2 }
  3030.  
  3031. # Create Admiral
  3032. random_list = {
  3033. 25 = {
  3034. create_leader = {
  3035. class = admiral
  3036. species = event_target:extradimensional_species
  3037. name = random
  3038. skill = 3
  3039. traits = {
  3040. trait = leader_trait_ethereal
  3041. }
  3042. }
  3043. }
  3044. 25 = {
  3045. create_leader = {
  3046. class = admiral
  3047. species = event_target:extradimensional_species
  3048. name = random
  3049. skill = 3
  3050. traits = {
  3051. trait = leader_trait_dimensional_stutter
  3052. }
  3053. }
  3054. }
  3055. 50 = {
  3056. create_leader = {
  3057. class = admiral
  3058. species = event_target:extradimensional_species
  3059. name = random
  3060. skill = 3
  3061. }
  3062. }
  3063. }
  3064.  
  3065. # Create Fleet
  3066. create_fleet = {
  3067. effect = {
  3068. set_owner = ROOT.owner
  3069. create_ship = {
  3070. name = random
  3071. design = "NAME_Huntress"
  3072. graphical_culture = "extra_dimensional_02"
  3073. }
  3074. assign_leader = last_created_leader
  3075. while = {
  3076. count = 5
  3077. create_ship = {
  3078. name = random
  3079. design = "NAME_Huntress"
  3080. graphical_culture = "extra_dimensional_02"
  3081. }
  3082. }
  3083. while = {
  3084. count = 8
  3085. create_ship = {
  3086. name = random
  3087. design = "NAME_Assassin"
  3088. graphical_culture = "extra_dimensional_02"
  3089. }
  3090. }
  3091. while = {
  3092. count = 15
  3093. create_ship = {
  3094. name = random
  3095. design = "NAME_Predator"
  3096. graphical_culture = "extra_dimensional_02"
  3097. }
  3098. }
  3099. set_location = {
  3100. target = event_target:second_portal
  3101. distance = 5
  3102. angle = random
  3103. }
  3104. set_fleet_stance = aggressive
  3105. set_aggro_range = 500
  3106. set_aggro_range_measure_from = self
  3107. }
  3108. }
  3109. }
  3110.  
  3111. # Extradimensionals 3
  3112. else_if = {
  3113. limit = { is_country_type = extradimensional_3 }
  3114.  
  3115. # Create Admiral
  3116. random_list = {
  3117. 25 = {
  3118. create_leader = {
  3119. class = admiral
  3120. species = event_target:extradimensional_species
  3121. name = random
  3122. skill = 3
  3123. traits = {
  3124. trait = leader_trait_ethereal
  3125. }
  3126. }
  3127. }
  3128. 25 = {
  3129. create_leader = {
  3130. class = admiral
  3131. species = event_target:extradimensional_species
  3132. name = random
  3133. skill = 3
  3134. traits = {
  3135. trait = leader_trait_dimensional_stutter
  3136. }
  3137. }
  3138. }
  3139. 50 = {
  3140. create_leader = {
  3141. class = admiral
  3142. species = event_target:extradimensional_species
  3143. name = random
  3144. skill = 3
  3145. }
  3146. }
  3147. }
  3148.  
  3149. # Create Fleet
  3150. create_fleet = {
  3151. effect = {
  3152. set_owner = ROOT.owner
  3153. create_ship = {
  3154. name = random
  3155. design = "NAME_Eradicator"
  3156. graphical_culture = "extra_dimensional_03"
  3157. }
  3158. assign_leader = last_created_leader
  3159. while = {
  3160. count = 5
  3161. create_ship = {
  3162. name = random
  3163. design = "NAME_Eradicator"
  3164. graphical_culture = "extra_dimensional_03"
  3165. }
  3166. }
  3167. while = {
  3168. count = 8
  3169. create_ship = {
  3170. name = random
  3171. design = "NAME_Annihilator"
  3172. graphical_culture = "extra_dimensional_03"
  3173. }
  3174. }
  3175. while = {
  3176. count = 15
  3177. create_ship = {
  3178. name = random
  3179. design = "NAME_Obliterator"
  3180. graphical_culture = "extra_dimensional_03"
  3181. }
  3182. }
  3183. set_location = {
  3184. target = event_target:third_portal
  3185. distance = 5
  3186. angle = random
  3187. }
  3188. set_fleet_stance = aggressive
  3189. set_aggro_range = 500
  3190. set_aggro_range_measure_from = self
  3191. }
  3192. }
  3193. }
  3194. }
  3195. }
  3196. }
  3197.  
  3198. # Extradimensionals Defeated (HIDDEN)
  3199. country_event = {
  3200. id = crisis.1270
  3201. hide_window = yes
  3202.  
  3203. is_triggered_only = yes
  3204.  
  3205. trigger = {
  3206. OR = {
  3207. is_country_type = extradimensional
  3208. is_country_type = extradimensional_2
  3209. is_country_type = extradimensional_3
  3210. }
  3211. NOT = {
  3212. any_country = {
  3213. AND = {
  3214. NOT = { is_same_value = ROOT }
  3215. OR = {
  3216. is_country_type = extradimensional
  3217. is_country_type = extradimensional_2
  3218. is_country_type = extradimensional_3
  3219. }
  3220. }
  3221. }
  3222. }
  3223. }
  3224.  
  3225. immediate = {
  3226. observer_event = { id = observer.40 }
  3227. every_country = {
  3228. limit = {
  3229. OR = {
  3230. is_country_type = default
  3231. is_country_type = fallen_empire
  3232. }
  3233. }
  3234. country_event = { id = crisis.1271 }
  3235. }
  3236. }
  3237. }
  3238.  
  3239. # Extradimensionals Defeated
  3240. country_event = {
  3241. id = crisis.1271
  3242. title = "crisis.1271.name"
  3243. desc = "crisis.1271.desc"
  3244. picture = GFX_evt_metropolis
  3245. show_sound = event_celebration
  3246.  
  3247. is_triggered_only = yes
  3248.  
  3249. immediate = {
  3250. end_event_chain = "extradimensional_invasion_chain"
  3251. end_event_chain = "extradimensional_invasion_chain_2"
  3252. end_event_chain = "extradimensional_invasion_chain_3"
  3253. }
  3254.  
  3255. option = { # Spiritualist Response
  3256. name = crisis.1271.a
  3257. trigger = {
  3258. has_spiritualist_government = yes
  3259. NOR = {
  3260. has_ethic = "ethic_fanatic_xenophile"
  3261. has_ethic = "ethic_fanatic_xenophobe"
  3262. }
  3263. }
  3264. add_monthly_resource_mult = {
  3265. resource = unity
  3266. value = @tier5unityreward
  3267. }
  3268. }
  3269. option = { # Militarist Response
  3270. name = crisis.1271.b
  3271. trigger = {
  3272. has_militarist_government = yes
  3273. NOR = {
  3274. has_ethic = "ethic_fanatic_xenophile"
  3275. has_ethic = "ethic_fanatic_xenophobe"
  3276. }
  3277. }
  3278. add_monthly_resource_mult = {
  3279. resource = unity
  3280. value = @tier5unityreward
  3281. }
  3282. }
  3283. option = { # Materialist Response
  3284. name = crisis.1271.c
  3285. trigger = {
  3286. has_materialist_government = yes
  3287. NOR = {
  3288. has_ethic = "ethic_fanatic_xenophile"
  3289. has_ethic = "ethic_fanatic_xenophobe"
  3290. }
  3291. }
  3292. add_monthly_resource_mult = {
  3293. resource = unity
  3294. value = @tier5unityreward
  3295. }
  3296. }
  3297. option = { # Pacifist Response
  3298. name = crisis.1271.d
  3299. trigger = {
  3300. has_pacifist_government = yes
  3301. NOR = {
  3302. has_ethic = "ethic_fanatic_xenophile"
  3303. has_ethic = "ethic_fanatic_xenophobe"
  3304. }
  3305. }
  3306. add_monthly_resource_mult = {
  3307. resource = unity
  3308. value = @tier5unityreward
  3309. }
  3310. }
  3311. option = { # Corporate Response
  3312. name = crisis.1271.e
  3313. trigger = {
  3314. has_government = gov_megacorporation
  3315. NOR = {
  3316. has_ethic = "ethic_fanatic_xenophile"
  3317. has_ethic = "ethic_fanatic_xenophobe"
  3318. }
  3319. }
  3320. add_monthly_resource_mult = {
  3321. resource = unity
  3322. value = @tier5unityreward
  3323. }
  3324. }
  3325. option = { # Default Response
  3326. name = crisis.211.f
  3327. trigger = {
  3328. OR = {
  3329. has_generic_government = yes
  3330. has_government = gov_enlightened_monarchy
  3331. has_government = gov_elective_monarchy
  3332. has_government = gov_hive_mind
  3333. has_authority = auth_machine_intelligence
  3334. }
  3335. NOR = {
  3336. has_ethic = "ethic_fanatic_xenophile"
  3337. has_ethic = "ethic_fanatic_xenophobe"
  3338. }
  3339. }
  3340. add_monthly_resource_mult = {
  3341. resource = unity
  3342. value = @tier5unityreward
  3343. }
  3344. }
  3345. option = { # Xenophobe Response
  3346. name = crisis.1271.g
  3347. trigger = {
  3348. has_ethic = "ethic_fanatic_xenophobe"
  3349. }
  3350. add_monthly_resource_mult = {
  3351. resource = unity
  3352. value = @tier5unityreward
  3353. }
  3354. }
  3355. option = { # Xenophile Response
  3356. name = crisis.1271.h
  3357. trigger = {
  3358. has_ethic = "ethic_fanatic_xenophile"
  3359. }
  3360. add_monthly_resource_mult = {
  3361. resource = unity
  3362. value = @tier5unityreward
  3363. }
  3364. }
  3365. }
  3366.  
  3367. # Anchor Built (HIDDEN)
  3368. ship_event = {
  3369. id = crisis.1280
  3370. hide_window = yes
  3371.  
  3372. is_triggered_only = yes
  3373.  
  3374. trigger = {
  3375. owner = {
  3376. OR = {
  3377. is_country_type = extradimensional
  3378. is_country_type = extradimensional_2
  3379. is_country_type = extradimensional_3
  3380. }
  3381. }
  3382. #is_ship_size = starbase_exd # now implicit
  3383. }
  3384.  
  3385. immediate = {
  3386. owner = {
  3387. log = "anchor built and crisis.1280 executed, not yet reaching fleet owner switch"
  3388. random_country = {
  3389. limit = { is_country_type = portal_holder }
  3390. save_event_target_as = portal_holder_1
  3391. }
  3392. random_owned_ship = {
  3393. limit = { is_ship_size = dimensional_portal_ed }
  3394. fleet = {
  3395. set_event_locked = yes
  3396. set_owner = event_target:portal_holder_1
  3397. log = "anchor built and crisis.1280 executed, reaching fleet owner switch"
  3398. }
  3399. }
  3400. }
  3401. if = {
  3402. limit = { owner = { is_country_type = extradimensional } }
  3403. every_country = {
  3404. limit = { has_event_chain = "extradimensional_invasion_chain" }
  3405. add_event_chain_counter = {
  3406. event_chain = "extradimensional_invasion_chain"
  3407. counter = "dimensional_anchors_1"
  3408. amount = 1
  3409. }
  3410. }
  3411. }
  3412. else_if = {
  3413. limit = { owner = { is_country_type = extradimensional_2 } }
  3414. every_country = {
  3415. limit = { has_event_chain = "extradimensional_invasion_chain_2" }
  3416. add_event_chain_counter = {
  3417. event_chain = "extradimensional_invasion_chain_2"
  3418. counter = "dimensional_anchors_2"
  3419. amount = 1
  3420. }
  3421. }
  3422. }
  3423. else_if = {
  3424. limit = { owner = { is_country_type = extradimensional_3 } }
  3425. every_country = {
  3426. limit = { has_event_chain = "extradimensional_invasion_chain_3" }
  3427. add_event_chain_counter = {
  3428. event_chain = "extradimensional_invasion_chain_3"
  3429. counter = "dimensional_anchors_3"
  3430. amount = 1
  3431. }
  3432. }
  3433. }
  3434. }
  3435. }
  3436.  
  3437. # Anchor Destroyed (HIDDEN)
  3438. country_event = {
  3439. id = crisis.1281
  3440. hide_window = yes
  3441.  
  3442. is_triggered_only = yes
  3443.  
  3444. trigger = {
  3445. FROMFROM = { is_ship_size = starbase_exd }
  3446. }
  3447.  
  3448. immediate = {
  3449. log = "anchor destroyed event crisis.1281 triggered"
  3450. if = {
  3451. limit = {
  3452. count_owned_ships = {
  3453. limit = { is_ship_size = starbase_exd }
  3454. count < 1
  3455. }
  3456. }
  3457. switch = {
  3458. trigger = has_country_flag
  3459. unbidden = {
  3460. random_country = {
  3461. limit = {
  3462. is_country_type = portal_holder
  3463. }
  3464. random_owned_ship = {
  3465. limit = {
  3466. is_ship_size = dimensional_portal_ed
  3467. has_ship_flag = unbidden_portal
  3468. }
  3469. fleet = { set_owner = root }
  3470. fleet = { set_event_locked = no }
  3471. }
  3472. }
  3473. }
  3474. aberrant = {
  3475. random_country = {
  3476. limit = {
  3477. is_country_type = portal_holder
  3478. }
  3479. random_owned_ship = {
  3480. limit = {
  3481. is_ship_size = dimensional_portal_ed
  3482. has_ship_flag = aberrant_portal
  3483. }
  3484. fleet = { set_owner = root }
  3485. fleet = { set_event_locked = no }
  3486. }
  3487. }
  3488. }
  3489. vehement = {
  3490. random_country = {
  3491. limit = {
  3492. is_country_type = portal_holder
  3493. }
  3494. random_owned_ship = {
  3495. limit = {
  3496. is_ship_size = dimensional_portal_ed
  3497. has_ship_flag = vehement_portal
  3498. }
  3499. fleet = { set_owner = root }
  3500. fleet = { set_event_locked = no }
  3501. }
  3502. }
  3503. }
  3504. }
  3505. }
  3506. if = {
  3507. limit = { is_country_type = extradimensional }
  3508. every_country = {
  3509. limit = { has_event_chain = "extradimensional_invasion_chain" }
  3510. add_event_chain_counter = {
  3511. event_chain = "extradimensional_invasion_chain"
  3512. counter = "dimensional_anchors_1"
  3513. amount = -1
  3514. }
  3515. }
  3516. }
  3517. else_if = {
  3518. limit = { is_country_type = extradimensional_2 }
  3519. every_country = {
  3520. limit = { has_event_chain = "extradimensional_invasion_chain_2" }
  3521. add_event_chain_counter = {
  3522. event_chain = "extradimensional_invasion_chain_2"
  3523. counter = "dimensional_anchors_2"
  3524. amount = -1
  3525. }
  3526. }
  3527. }
  3528. else_if = {
  3529. limit = { is_country_type = extradimensional_3 }
  3530. every_country = {
  3531. limit = { has_event_chain = "extradimensional_invasion_chain_3" }
  3532. add_event_chain_counter = {
  3533. event_chain = "extradimensional_invasion_chain_3"
  3534. counter = "dimensional_anchors_3"
  3535. amount = -1
  3536. }
  3537. }
  3538. }
  3539. }
  3540. }
  3541.  
  3542. # Extradimensional Kill Count (HIDDEN)
  3543. country_event = {
  3544. id = crisis.1282
  3545. hide_window = yes
  3546.  
  3547. is_triggered_only = yes
  3548.  
  3549. trigger = {
  3550. OR = {
  3551. is_country_type = extradimensional
  3552. is_country_type = extradimensional_2
  3553. is_country_type = extradimensional_3
  3554. }
  3555. }
  3556.  
  3557. immediate = {
  3558. if = {
  3559. limit = {
  3560. is_country_type = extradimensional
  3561. FROM = { has_event_chain = "extradimensional_invasion_chain" }
  3562. }
  3563. FROM = {
  3564. add_event_chain_counter = {
  3565. event_chain = "extradimensional_invasion_chain"
  3566. counter = "extradimensional_kills_us_1"
  3567. amount = 1
  3568. }
  3569. }
  3570. }
  3571. else_if = {
  3572. limit = {
  3573. is_country_type = extradimensional_2
  3574. FROM = { has_event_chain = "extradimensional_invasion_chain_2" }
  3575. }
  3576. FROM = {
  3577. add_event_chain_counter = {
  3578. event_chain = "extradimensional_invasion_chain_2"
  3579. counter = "extradimensional_kills_us_2"
  3580. amount = 1
  3581. }
  3582. }
  3583. }
  3584. else_if = {
  3585. limit = {
  3586. is_country_type = extradimensional_3
  3587. FROM = { has_event_chain = "extradimensional_invasion_chain_3" }
  3588. }
  3589. FROM = {
  3590. add_event_chain_counter = {
  3591. event_chain = "extradimensional_invasion_chain_3"
  3592. counter = "extradimensional_kills_us_3"
  3593. amount = 1
  3594. }
  3595. }
  3596. }
  3597. if = {
  3598. limit = { is_country_type = extradimensional }
  3599. every_country = {
  3600. limit = {
  3601. has_event_chain = "extradimensional_invasion_chain"
  3602. NOT = { is_same_value = FROM }
  3603. }
  3604. add_event_chain_counter = {
  3605. event_chain = "extradimensional_invasion_chain"
  3606. counter = "extradimensional_kills_others_1"
  3607. amount = 1
  3608. }
  3609. }
  3610. }
  3611. else_if = {
  3612. limit = { is_country_type = extradimensional_2 }
  3613. every_country = {
  3614. limit = {
  3615. has_event_chain = "extradimensional_invasion_chain_2"
  3616. NOT = { is_same_value = FROM }
  3617. }
  3618. add_event_chain_counter = {
  3619. event_chain = "extradimensional_invasion_chain_2"
  3620. counter = "extradimensional_kills_others_2"
  3621. amount = 1
  3622. }
  3623. }
  3624. }
  3625. else_if = {
  3626. limit = { is_country_type = extradimensional_3 }
  3627. every_country = {
  3628. limit = {
  3629. has_event_chain = "extradimensional_invasion_chain_3"
  3630. NOT = { is_same_value = FROM }
  3631. }
  3632. add_event_chain_counter = {
  3633. event_chain = "extradimensional_invasion_chain_3"
  3634. counter = "extradimensional_kills_others_3"
  3635. amount = 1
  3636. }
  3637. }
  3638. }
  3639. }
  3640. }
  3641.  
  3642. # Extradimensional Victims (HIDDEN)
  3643. country_event = {
  3644. id = crisis.1283
  3645. hide_window = yes
  3646.  
  3647. is_triggered_only = yes
  3648.  
  3649. trigger = {
  3650. OR = {
  3651. is_country_type = extradimensional
  3652. is_country_type = extradimensional_2
  3653. is_country_type = extradimensional_3
  3654. }
  3655. FROM = {
  3656. NOR = {
  3657. is_country_type = extradimensional
  3658. is_country_type = extradimensional_2
  3659. is_country_type = extradimensional_3
  3660. }
  3661. }
  3662. }
  3663.  
  3664. immediate = {
  3665. if = {
  3666. limit = { is_country_type = extradimensional }
  3667. every_country = {
  3668. limit = { has_event_chain = "extradimensional_invasion_chain" }
  3669. add_event_chain_counter = {
  3670. event_chain = "extradimensional_invasion_chain"
  3671. counter = "extradimensional_victims_1"
  3672. amount = 1
  3673. }
  3674. }
  3675. }
  3676. else_if = {
  3677. limit = { is_country_type = extradimensional_2 }
  3678. every_country = {
  3679. limit = { has_event_chain = "extradimensional_invasion_chain_2" }
  3680. add_event_chain_counter = {
  3681. event_chain = "extradimensional_invasion_chain_2"
  3682. counter = "extradimensional_victims_2"
  3683. amount = 1
  3684. }
  3685. }
  3686. }
  3687. else_if = {
  3688. limit = { is_country_type = extradimensional_3 }
  3689. every_country = {
  3690. limit = { has_event_chain = "extradimensional_invasion_chain_3" }
  3691. add_event_chain_counter = {
  3692. event_chain = "extradimensional_invasion_chain_3"
  3693. counter = "extradimensional_victims_3"
  3694. amount = 1
  3695. }
  3696. }
  3697. }
  3698. }
  3699. }
  3700.  
  3701.  
  3702. # Events to manage crisis sound loop
  3703. country_event = {
  3704. id = crisis.1230
  3705. hide_window = yes
  3706.  
  3707. trigger = {
  3708. has_crisis_stage_3 = yes
  3709. OR = {
  3710. is_country_type = extradimensional
  3711. is_country_type = extradimensional_2
  3712. is_country_type = extradimensional_3
  3713. }
  3714. NOT = {
  3715. any_country = {
  3716. OR = {
  3717. is_country_type = extradimensional
  3718. is_country_type = extradimensional_2
  3719. is_country_type = extradimensional_3
  3720. }
  3721. galaxy_percentage > 0.10
  3722. }
  3723. }
  3724. }
  3725.  
  3726. mean_time_to_happen = {
  3727. months = 1
  3728. }
  3729.  
  3730. immediate = {
  3731. set_crisis_sound = extradimensional_crisis_ambient_stage_2
  3732. set_crisis_stage_2 = yes
  3733. }
  3734. }
  3735.  
  3736. country_event = {
  3737. id = crisis.1231
  3738. hide_window = yes
  3739.  
  3740. trigger = {
  3741. has_crisis_stage_2 = yes
  3742. OR = {
  3743. is_country_type = extradimensional
  3744. is_country_type = extradimensional_2
  3745. is_country_type = extradimensional_3
  3746. }
  3747. any_country = {
  3748. OR = {
  3749. is_country_type = extradimensional
  3750. is_country_type = extradimensional_2
  3751. is_country_type = extradimensional_3
  3752. }
  3753. galaxy_percentage > 0.15
  3754. }
  3755. }
  3756.  
  3757. mean_time_to_happen = {
  3758. months = 1
  3759. }
  3760.  
  3761. immediate = {
  3762. set_crisis_sound = extradimensional_crisis_ambient_stage_3
  3763. set_crisis_stage_3 = yes
  3764. }
  3765. }
  3766.  
  3767. country_event = {
  3768. id = crisis.1232
  3769. hide_window = yes
  3770.  
  3771. trigger = {
  3772. has_crisis_stage_4 = yes
  3773. OR = {
  3774. is_country_type = extradimensional
  3775. is_country_type = extradimensional_2
  3776. is_country_type = extradimensional_3
  3777. }
  3778. NOT = {
  3779. any_country = {
  3780. OR = {
  3781. is_country_type = extradimensional
  3782. is_country_type = extradimensional_2
  3783. is_country_type = extradimensional_3
  3784. }
  3785. galaxy_percentage > 0.25
  3786. }
  3787. }
  3788. }
  3789.  
  3790. mean_time_to_happen = {
  3791. months = 1
  3792. }
  3793.  
  3794. immediate = {
  3795. set_crisis_sound = extradimensional_crisis_ambient_stage_3
  3796. set_crisis_stage_3 = yes
  3797. }
  3798. }
  3799.  
  3800. country_event = {
  3801. id = crisis.1233
  3802. hide_window = yes
  3803.  
  3804. trigger = {
  3805. has_crisis_stage_3 = yes
  3806. OR = {
  3807. is_country_type = extradimensional
  3808. is_country_type = extradimensional_2
  3809. is_country_type = extradimensional_3
  3810. }
  3811. any_country = {
  3812. OR = {
  3813. is_country_type = extradimensional
  3814. is_country_type = extradimensional_2
  3815. is_country_type = extradimensional_3
  3816. }
  3817. galaxy_percentage > 0.30
  3818. }
  3819. }
  3820.  
  3821. mean_time_to_happen = {
  3822. months = 1
  3823. }
  3824.  
  3825. immediate = {
  3826. set_crisis_sound = extradimensional_crisis_ambient_stage_final
  3827. set_crisis_stage_4 = yes
  3828. }
  3829. }
  3830.  
  3831. country_event = {
  3832. id = crisis.1234
  3833. hide_window = yes
  3834.  
  3835. trigger = {
  3836. has_crisis_stage_1 = yes
  3837. OR = {
  3838. is_country_type = extradimensional
  3839. is_country_type = extradimensional_2
  3840. is_country_type = extradimensional_3
  3841. }
  3842. any_country = {
  3843. OR = {
  3844. is_country_type = extradimensional
  3845. is_country_type = extradimensional_2
  3846. is_country_type = extradimensional_3
  3847. }
  3848. galaxy_percentage > 0.05
  3849. }
  3850. }
  3851.  
  3852. mean_time_to_happen = {
  3853. months = 1
  3854. }
  3855.  
  3856. immediate = {
  3857. set_crisis_sound = extradimensional_crisis_ambient_stage_2
  3858. set_crisis_stage_2 = yes
  3859. }
  3860. }
  3861.  
  3862. # Warlock Captured
  3863. country_event = {
  3864. id = crisis.1250
  3865. title = "crisis.1250.name"
  3866. desc = "crisis.1250.desc"
  3867. picture = GFX_evt_surreal_visions
  3868. show_sound = event_mystic_reveal
  3869.  
  3870. is_triggered_only = yes
  3871.  
  3872. option = {
  3873. name = GOOD
  3874. add_relic = r_unbidden_warlock
  3875. }
  3876. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement