unfucking the mod

This commit is contained in:
trashmasteruni 2026-01-06 14:25:21 +01:00
parent cbe3fbcda2
commit d887392b56
1167 changed files with 26982 additions and 13 deletions

3442
events/test_events/debug.txt Normal file

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,117 @@
namespace = debug_portraits
debug_portraits.1 = {
scope = none
hidden = yes
immediate = {
character:animation_test_female = { make_unprunable = yes }
character:animation_test_male = { make_unprunable = yes }
character:animation_test_dwarf_female = { make_unprunable = yes }
character:animation_test_dwarf_male = { make_unprunable = yes }
character:animation_test_fat_dwarf_female = { make_unprunable = yes }
character:animation_test_fat_dwarf_male = { make_unprunable = yes }
character:animation_test_female_pregnant = { make_unprunable = yes }
character:animation_test_hunchbacked_female = { make_unprunable = yes }
character:animation_test_hunchbacked_male = { make_unprunable = yes }
character:animation_test_female_child = { make_unprunable = yes }
character:animation_test_male_child = { make_unprunable = yes }
character:animation_test_muscular_female = { make_unprunable = yes }
character:animation_test_muscular_male = { make_unprunable = yes }
}
}
debug_portraits.2 = { # Max Portraits in Event Window
type = character_event
title = LOREM_IPSUM_TITLE
desc = LOREM_IPSUM_DESCRIPTION
theme = lighting_test
orphan = yes
left_portrait = {
character = scope:portrait_1
animation = wedding_priest
}
right_portrait = {
character = scope:portrait_2
animation = wedding_priest
}
center_portrait = {
character = scope:portrait_3
animation = wedding_priest
}
lower_right_portrait = scope:portrait_4
lower_center_portrait = scope:portrait_5
lower_left_portrait = scope:portrait_6
immediate = {
random_ruler = {
save_scope_as = portrait_1
}
random_ruler = {
save_scope_as = portrait_2
}
random_ruler = {
save_scope_as = portrait_3
}
random_ruler = {
save_scope_as = portrait_4
}
random_ruler = {
save_scope_as = portrait_5
}
random_ruler = {
save_scope_as = portrait_6
}
}
option = {
name = LOREM_IPSUM_TITLE
}
}
debug_portraits.3 = {
type = activity_event
title = LOREM_IPSUM_TITLE
desc = LOREM_IPSUM_DESCRIPTION
theme = lighting_test
orphan = yes
override_background = {
# change me to change the event background (00_event_backgrounds.txt)
reference = activity_feast
}
left_portrait = {
character = root
animation = personality_honorable
}
center_portrait = {
character = scope:activity_guest1
animation = personality_rational
}
right_portrait = {
character = scope:activity_guest2
animation = personality_irrational
}
immediate = {
involved_activity = {
random_attending_character = {
save_scope_as = activity_guest1
}
random_attending_character = {
save_scope_as = activity_guest2
}
}
}
option = {
name = LOREM_IPSUM_TITLE
}
}

View file

@ -0,0 +1,104 @@
# Insult another character... in rhyme!
namespace = insult_poetry
#Base event structure
insult_poetry.0001 = {
type = character_event
title = insult_poetry.0001.t
orphan = yes
desc = {
triggered_desc = {
trigger = {
scope:actor != scope:recipient
}
desc = insult_poetry.0001.from_other
}
random_valid = {
triggered_desc = {
trigger = { scope:rhyme_group = flag:a }
desc = insult_poetry_line_1_a_01
}
triggered_desc = {
trigger = { scope:rhyme_group = flag:a }
desc = insult_poetry_line_1_a_02
}
triggered_desc = {
trigger = { scope:rhyme_group = flag:b }
desc = insult_poetry_line_1_b_01
}
triggered_desc = {
trigger = { scope:rhyme_group = flag:b }
desc = insult_poetry_line_1_b_02
}
triggered_desc = {
trigger = { scope:rhyme_group = flag:c }
desc = insult_poetry_line_1_c_01
}
triggered_desc = {
trigger = { scope:rhyme_group = flag:c }
desc = insult_poetry_line_1_c_02
}
}
random_valid = {
triggered_desc = {
trigger = { scope:rhyme_group = flag:a }
desc = insult_poetry_line_2_a_01
}
triggered_desc = {
trigger = { scope:rhyme_group = flag:a }
desc = insult_poetry_line_2_a_02
}
triggered_desc = {
trigger = { scope:rhyme_group = flag:b }
desc = insult_poetry_line_2_b_01
}
triggered_desc = {
trigger = { scope:rhyme_group = flag:b }
desc = insult_poetry_line_2_b_02
}
triggered_desc = {
trigger = { scope:rhyme_group = flag:c }
desc = insult_poetry_line_2_c_01
}
triggered_desc = {
trigger = { scope:rhyme_group = flag:c }
desc = insult_poetry_line_2_c_02
}
}
}
theme = learning
left_portrait = {
character = scope:actor
animation = schadenfreude
}
immediate = {
random_list = {
1 = {
save_scope_value_as = {
name = rhyme_group
value = flag:a
}
}
1 = {
save_scope_value_as = {
name = rhyme_group
value = flag:b
}
}
1 = {
save_scope_value_as = {
name = rhyme_group
value = flag:c
}
}
}
}
option = {
name = insult_poetry.0001.a
}
}

View file

@ -0,0 +1,317 @@
# Can we generate sensible poems?
# Probably not, let's try.
namespace = poetry
poetry.0001 = {
type = character_event
orphan = yes
desc = {
# First line
random_valid = {
triggered_desc = {
trigger = {
ROOT = {
var:text_set_first_and_second_lines = flag:set_one
}
}
desc = first_line_text_set_1_A
}
triggered_desc = {
trigger = {
ROOT = {
var:text_set_first_and_second_lines = flag:set_one
}
}
desc = first_line_text_set_1_B
}
triggered_desc = {
trigger = {
ROOT = {
var:text_set_first_and_second_lines = flag:set_two
}
}
desc = first_line_text_set_2_A
}
triggered_desc = {
trigger = {
ROOT = {
var:text_set_first_and_second_lines = flag:set_two
}
}
desc = first_line_text_set_2_B
}
}
desc = poetry_line_break
# Second line
random_valid = {
triggered_desc = {
trigger = {
ROOT = {
var:text_set_first_and_second_lines = flag:set_one
}
}
desc = second_line_text_set_1_A
}
triggered_desc = {
trigger = {
ROOT = {
var:text_set_first_and_second_lines = flag:set_one
}
}
desc = second_line_text_set_1_B
}
triggered_desc = {
trigger = {
ROOT = {
var:text_set_first_and_second_lines = flag:set_two
}
}
desc = second_line_text_set_2_A
}
triggered_desc = {
trigger = {
ROOT = {
var:text_set_first_and_second_lines = flag:set_two
}
}
desc = second_line_text_set_2_B
}
}
desc = poetry_line_break
# Third line
random_valid = {
triggered_desc = {
trigger = {
ROOT = {
var:text_set_third_and_fourth_lines = flag:set_one
}
}
desc = third_line_text_set_1_A
}
triggered_desc = {
trigger = {
ROOT = {
var:text_set_third_and_fourth_lines = flag:set_one
}
}
desc = third_line_text_set_1_B
}
triggered_desc = {
trigger = {
ROOT = {
var:text_set_third_and_fourth_lines = flag:set_two
}
}
desc = third_line_text_set_2_A
}
triggered_desc = {
trigger = {
ROOT = {
var:text_set_third_and_fourth_lines = flag:set_two
}
}
desc = third_line_text_set_2_B
}
}
desc = poetry_line_break
# Fourth line
random_valid = {
triggered_desc = {
trigger = {
ROOT = {
var:text_set_third_and_fourth_lines = flag:set_one
}
}
desc = fourth_line_text_set_1_A
}
triggered_desc = {
trigger = {
ROOT = {
var:text_set_third_and_fourth_lines = flag:set_one
}
}
desc = fourth_line_text_set_1_B
}
triggered_desc = {
trigger = {
ROOT = {
var:text_set_third_and_fourth_lines = flag:set_two
}
}
desc = fourth_line_text_set_2_A
}
triggered_desc = {
trigger = {
ROOT = {
var:text_set_third_and_fourth_lines = flag:set_two
}
}
desc = fourth_line_text_set_2_B
}
}
}
left_portrait = root
theme = learning
immediate = {
# Roll for first and second line:
random_list = {
25 = {
root = {
set_variable = {
name = text_set_first_and_second_lines
value = flag:set_one
}
}
}
25 = {
root = {
set_variable = {
name = text_set_first_and_second_lines
value = flag:set_two
}
}
}
}
# Roll for third and fourth lines:
random_list = {
25 = {
root = {
set_variable = {
name = text_set_third_and_fourth_lines
value = flag:set_one
}
}
}
25 = {
root = {
set_variable = {
name = text_set_third_and_fourth_lines
value = flag:set_two
}
}
}
}
}
option = {
name = OK_BUTTON
}
}
poetry.0002 = {
type = character_event
title = poetry.0002.t
orphan = yes
desc = {
random_valid = {
desc = 0002.blank_verse_line_1_A
desc = 0002.blank_verse_line_1_B
desc = 0002.blank_verse_line_1_C
desc = 0002.blank_verse_line_1_D
}
desc = poetry_line_break
random_valid = {
desc = 0002.blank_verse_line_2_A
desc = 0002.blank_verse_line_2_B
desc = 0002.blank_verse_line_2_C
desc = 0002.blank_verse_line_2_D
}
desc = poetry_line_break
random_valid = {
desc = 0002.blank_verse_line_3_A
desc = 0002.blank_verse_line_3_B
desc = 0002.blank_verse_line_3_C
desc = 0002.blank_verse_line_3_D
}
desc = poetry_line_break
random_valid = {
desc = 0002.blank_verse_line_4_A
desc = 0002.blank_verse_line_4_B
desc = 0002.blank_verse_line_4_C
desc = 0002.blank_verse_line_4_D
}
}
theme = learning
option = {
name = OK_BUTTON
}
}
# Blank verse with themed words
# Okay, so this should result in 4 lines, where each line is a relevant theme word.
# Theme word type (specific_noun_one, abstract_noun_one, etc.) is set by which custom('') text is asked for in loc.
# This means that if you want a single line to have the potential to get two different word types, you have to create a new "sub" random_valid choosing between two loc strings with identical text, but which asks for a different custom('') text.
# Poem responsibly.
poetry.0003 = {
type = character_event
title = poetry.0003.t
orphan = yes
desc = {
triggered_desc = {
trigger = { scope:recipient != scope:actor }
desc = {
desc = 0003.poetry_from
desc = poetry_line_break
desc = poetry_line_break
}
}
random_valid = {
desc = 0003.line_1_A
desc = 0003.line_1_B
#desc = 0003.line_1_C
#desc = 0003.line_1_D
}
desc = poetry_line_break
random_valid = {
desc = 0003.line_2_A
desc = 0003.line_2_B
#desc = 0003.line_2_C
#desc = 0003.line_2_D
}
desc = poetry_line_break
random_valid = {
desc = 0003.line_3_A
desc = 0003.line_3_B
#desc = 0003.line_3_C
#desc = 0003.line_3_D
}
desc = poetry_line_break
random_valid = {
desc = 0003.line_4_A
desc = 0003.line_4_B
#desc = 0003.line_4_C
#desc = 0003.line_4_D
}
}
theme = learning
immediate = {
random_list = {
25 = {
set_variable = {
name = poetry_theme
value = flag:nobility
}
}
25 = {
set_variable = {
name = poetry_theme
value = flag:romance
}
}
}
}
option = {
name = OK_BUTTON
}
}

View file

@ -0,0 +1,207 @@
namespace = test_activity_events
test_activity_events.1 = {
type = activity_event
title = test_activity_events.1.t
desc = test_activity_events.1.desc
left_portrait = root
right_portrait = root.primary_heir
theme = stewardship_wealth_focus
orphan = yes
widget = {
gui = "event_window_widget_stress"
container = "custom_widgets_container"
}
immediate = {
save_scope_as = stress_character # For stress widget
add_gold = 1337
}
option = {
name = test_activity_events.1.a
primary_heir = { add_prestige = 42 }
}
option = {
name = test_activity_events.1.b
add_piety = 420
}
}
test_activity_events.2 = {
type = activity_event
title = debug_main
desc = debug_main
theme = ep2_video_test
orphan = yes
option = {
name = debug_main
}
}
test_activity_events.3 = {
type = activity_event
window = activity_locale_fullscreen_event_widget
title = debug_main
desc = debug_main
theme = default
orphan = yes
option = {
name = debug_main
}
}
test_activity_events.4 = { # Max Portraits in Event Window
type = activity_event
title = LOREM_IPSUM_TITLE
desc = LOREM_IPSUM_DESCRIPTION
theme = realm
orphan = yes
left_portrait = {
character = scope:portrait_1
animation = wedding_priest
}
right_portrait = {
character = scope:portrait_2
animation = wedding_priest
}
center_portrait = {
character = scope:portrait_3
animation = wedding_priest
}
lower_right_portrait = scope:portrait_4
lower_center_portrait = scope:portrait_5
lower_left_portrait = scope:portrait_6
immediate = {
random_ruler = {
save_scope_as = portrait_1
}
random_ruler = {
save_scope_as = portrait_2
}
random_ruler = {
save_scope_as = portrait_3
}
random_ruler = {
save_scope_as = portrait_4
}
random_ruler = {
save_scope_as = portrait_5
}
random_ruler = {
save_scope_as = portrait_6
}
}
option = {
name = LOREM_IPSUM_TITLE
}
option = {
name = LOREM_IPSUM_TITLE
}
option = {
name = LOREM_IPSUM_TITLE
}
option = {
name = LOREM_IPSUM_TITLE
}
}
test_activity_events.5 = { # Camera override in event wndow
type = activity_event
title = LOREM_IPSUM_TITLE
desc = LOREM_IPSUM_DESCRIPTION
theme = realm
orphan = yes
left_portrait = scope:portrait_1
center_portrait = {
character = scope:portrait_3
camera = camera_event_right
}
right_portrait = {
character = scope:portrait_2
camera = camera_event_right
}
immediate = {
random_ruler = {
save_scope_as = portrait_1
}
random_ruler = {
save_scope_as = portrait_2
}
random_ruler = {
save_scope_as = portrait_3
}
}
option = {
name = LOREM_IPSUM_TITLE
}
}
## Test transitions
test_activity_events.10 = {
type = activity_event
title = LOREM_IPSUM_TITLE
desc = LOREM_IPSUM_DESCRIPTION
left_portrait = root
right_portrait = root.primary_heir
theme = tournament_archery_pivotal
window = tournament_fullscreen_pivotal_event_widget
orphan = yes
override_transition = {
trigger = {
exists = var:progress_to_victory
var:progress_to_victory > 75
}
reference = debug_test_transition_1
}
override_transition = {
trigger = {
exists = var:progress_to_victory
var:progress_to_victory <= 75
var:progress_to_victory > 25
}
reference = debug_test_transition_2
}
override_transition = {
trigger = {
exists = var:progress_to_victory
var:progress_to_victory <= 25
}
reference = debug_test_transition_3
}
orphan = yes
immediate = {
add_gold = 1337
}
option = {
name = test_activity_events.1.a
primary_heir = { add_prestige = 42 }
}
option = {
name = test_activity_events.1.b
add_piety = 420
}
}

View file

@ -0,0 +1,167 @@
namespace = test_court_events
test_court_events.1 = {
type = court_event
title = test_court_events.1.t
desc = test_court_events.1.desc
left_portrait = root
right_portrait = root.primary_heir
theme = stewardship_wealth_focus
orphan = yes
court_scene = {
button_position_character = primary_heir
roles = {
primary_heir = {
group = event_group
}
primary_spouse = {
group = event_group
animation = flirtation
}
}
}
widget = {
gui = "event_window_widget_stress"
container = "custom_widgets_container"
}
immediate = {
save_scope_as = stress_character # For stress widget
add_gold = 1337
}
option = {
name = test_court_events.1.a
primary_heir = { add_prestige = 42 }
}
option = {
name = test_court_events.1.b
add_piety = 420
}
}
test_court_events.2 = {
type = court_event
title = test_court_events.1.t
desc = test_court_events.1.desc
left_portrait = root
right_portrait = root.primary_heir
theme = stewardship_wealth_focus
orphan = yes
court_scene = {
button_position_character = scope:person_1
roles = {
scope:person_1 = event_group
scope:person_2 = event_group
scope:person_3 = event_group
}
}
immediate = {
random_courtier_or_guest = {
limit = {
not = {
has_variable = in_debug_court_event
}
}
save_scope_as = person_1
set_variable = in_debug_court_event
}
random_courtier_or_guest = {
limit = {
nor = {
this = scope:person_1
has_variable = in_debug_court_event
}
}
save_scope_as = person_2
set_variable = in_debug_court_event
}
random_courtier_or_guest = {
limit = {
nor = {
this = scope:person_1
this = scope:person_2
has_variable = in_debug_court_event
}
}
save_scope_as = person_3
set_variable = in_debug_court_event
}
add_gold = 1337
}
option = {
name = test_court_events.1.a
scope:person_1 = { add_prestige = 42 }
}
option = {
name = test_court_events.1.b
add_piety = 420
}
after = {
scope:person_1 = { remove_variable = in_debug_court_event }
scope:person_2 = { remove_variable = in_debug_court_event }
scope:person_3 = { remove_variable = in_debug_court_event }
}
}
test_court_events.3 = {
type = court_event
title = test_court_events.1.t
desc = test_court_events.1.desc
left_portrait = root
right_portrait = root.primary_heir
theme = stewardship_wealth_focus
orphan = yes
court_scene = {
button_position_character = primary_heir
roles = {
primary_heir = {
group = event_group
}
primary_spouse = {
group = event_group
animation = flirtation
}
}
}
widget = {
gui = "event_window_widget_stress"
container = "custom_widgets_container"
}
immediate = {
save_scope_as = stress_character # For stress widget
add_gold = 1337
}
option = {
name = test_court_events.1.a
add_gold = 1337
add_prestige = 50
add_piety = 50
primary_heir = {
add_gold = 1337
add_prestige = 50
add_piety = 50
}
random_list = {
5 = {
add_dread = 10
}
5 = {
primary_heir = { add_dread = 10 }
}
}
}
}