Added 3 Whole Artifacts

Added the Crown and Sword of St. Wenceslas and the Codex Gigus and added them to characters (Duke of Bohemia, Duchess of Moravia and the King of Sweden)
Lastly added a few files from the base-game to make templates and artifact visuals easier to find (and create)
This commit is contained in:
GoTouchSomeGrass314 2026-04-12 20:17:21 +02:00
parent 7581ab67c0
commit 044fbdb21f
14 changed files with 813 additions and 17 deletions

View file

@ -0,0 +1,59 @@
# New Era Old World Artifacts Templates
codex_template = {
can_equip = {
always = yes
}
can_benefit = {
NEOW_christian_book_artifact_trigger = yes
}
can_reforge = {
NEOW_christian_book_artifact_trigger = yes
}
can_repair = {
always = yes
}
fallback = {
learning = 2
stress_gain_mult = 0.15
negate_health_penalty_add = 0.10
catholic_religion_opinion = 20
}
ai_score = {
value = 100
}
unique = yes
}
sword_wenceslas_template = {
can_equip = {
always = yes
}
can_benefit = {
#NEOW_is_czech_king_trigger = yes
}
can_reforge = {
#NEOW_is_czech_king_trigger = yes
}
fallback = {
monthly_piety = 0.35
court_grandeur_baseline_add = 5
courtier_and_guest_opinion = 5
}
ai_score = {
value = 100
}
unique = yes
}

View file

@ -0,0 +1,40 @@
# The optional scripted base component of an artifact containing triggers and effects that cannot be read during artifact creation.
# Determines for example if a given character can wield an artifact or get its full benefits.
# Root scope is character for all triggers, but the artifact can be accessed via scope:artifact
example_template = {
# can this character equip this artifact?
can_equip = {
always = yes
}
# can this character benefit from the full modifiers of the artifact?
can_benefit = {
is_christian_trigger = yes
}
# can this character reforge this artifact (turn this artifact into another)
can_reforge = {
is_christian_trigger = yes
}
# can this character repair this artifact (restore its durability)
can_repair = {
always = no
}
# if a given character does not pass the "can_benefit" trigger then this modifier will be applied instead.
fallback = {
monthly_prestige = 0.3
}
# Adds the final value to the AI equipping score, note the can_benefit takes precedence over the score when AI equipping
# artifact_ai_will_equip_score in game/common/scripted_values/00_artifact_values.txt also effect the final score
ai_score = {
value = 100
}
# Artifacts with this templates show as unique, default = no
unique = yes
}

View file

@ -0,0 +1,460 @@
#########################
# Personal Artifacts #
#########################
# Crowns
helmet = {
slot = helmet
required_features = { crown_decoration decoration_material_wire }
optional_features = { decoration_material_gem }
}
helmet_simple = {
slot = helmet
}
# Regalia/Crown Jewels
regalia = {
slot = regalia
required_features = {
# Core regalia components:
regalia_scepter regalia_clothes regalia_accessory
# Necessary regalia materials:
decoration_material_wire # Base material for the scepter and accessory
decoration_material_gem # Gems decorating the scepter and accessory
generic_material_cloth # Base textile for the robe/cape.
decoration_material_embroidery # Thread for embroidering the robe/cape.
}
}
regalia_simple = {
slot = regalia
}
seal_of_investiture = {
slot = regalia
required_features = {
decoration_material_slate # Base material for seal's foundation
decoration_material_ink # Ink required for the calligraphy
}
}
seal_of_investiture_court = {
slot = pedestal
required_features = {
decoration_material_slate # Base material for seal's foundation
decoration_material_ink # Ink required for the calligraphy
}
}
# Armor
armor_mail = {
slot = armor
required_features = { armor_material armor_helmet }
optional_features = {
# Armor-specific
armor_decoration generic_material_cloth
# General decorations
decoration_pattern decoration_material_inlay decoration_material_wire armor_property
}
}
armor_plate = {
slot = armor
required_features = { armor_material armor_helmet }
optional_features = {
# Armor-specific
armor_decoration generic_material_cloth
# General decorations
decoration_pattern decoration_material_inlay decoration_material_wire armor_property
}
}
armor_scale = {
slot = armor
required_features = { armor_material armor_helmet }
optional_features = {
# Armor-specific
armor_decoration generic_material_cloth
# General decorations
decoration_pattern decoration_material_inlay decoration_material_wire armor_property
}
}
armor_lamellar = {
slot = armor
required_features = { armor_material generic_material_cordage generic_material_cloth armor_helmet}
optional_features = {
# Armor-specific
armor_decoration
# General decorations
decoration_pattern decoration_material_inlay decoration_material_wire armor_property
}
}
armor_laminar = {
slot = armor
required_features = { armor_material generic_material_cordage generic_material_cloth armor_helmet }
optional_features = {
# Armor-specific
armor_decoration
# General decorations
decoration_pattern decoration_material_inlay decoration_material_wire armor_property
}
}
armor_brigandine = {
slot = armor
required_features = { armor_material generic_material_cloth armor_helmet }
optional_features = {
# Armor-specific
armor_decoration
# General decorations
decoration_pattern decoration_material_inlay decoration_material_wire armor_property
}
}
# Weapons
axe = {
slot = primary_armament
required_features = { head_metal shaft_wood }
optional_features = {
# Axe-specific:
head_decoration shaft_decoration
# General decorations:
decoration_pattern decoration_material_inlay decoration_material_inlay_HSB decoration_material_wire
}
}
hammer = {
slot = primary_armament
required_features = { head_metal shaft_wood }
optional_features = {
# Hammer-specific:
head_decoration shaft_decoration
# General decorations:
decoration_pattern decoration_material_inlay decoration_material_inlay_HSB decoration_material_wire
}
}
mace = {
slot = primary_armament
required_features = { head_metal handle_metal }
optional_features = {
# Mace-specific:
head_decoration metal_handle_decoration
# General decorations:
decoration_pattern decoration_material_inlay decoration_material_wire
}
}
spear = {
slot = primary_armament
required_features = { head_metal shaft_wood }
optional_features = {
# Spear-specific:
head_decoration shaft_decoration
# General decorations:
decoration_pattern decoration_material_inlay decoration_material_inlay_HSB decoration_material_wire
}
}
sword = {
slot = primary_armament
required_features = { blade_metal }
optional_features = {
# Sword-specific:
blade_decoration hilt_decoration
# General decorations:
decoration_pattern decoration_material_inlay decoration_material_wire
}
}
dagger = {
slot = primary_armament
required_features = { blade_metal }
optional_features = {
# Dagger-specific:
blade_decoration hilt_decoration
# General decorations:
decoration_pattern decoration_material_inlay decoration_material_wire
}
}
# Trinkets
miscellaneous = {
slot = miscellaneous
optional_features = { book_subject book_cover_material book_topic book_title book_decoration decoration_pattern generic_material_wood decoration_material_gem decoration_material_inlay_HSB }
can_reforge = no
}
# Journals
journal = {
slot = journal
optional_features = { book_subject book_cover_material book_topic book_title book_decoration decoration_pattern generic_material_wood decoration_material_gem decoration_material_inlay_HSB }
can_reforge = no
}
# For artefacts that we *don't* want to start as court artefacts, because you might not have Royal Court, but which will generally be expected to convert into one at the earliest opportunity.
miscellaneous_when_not_court = {
slot = miscellaneous
# Just add to this list as new DLC court artefacts are designed.
optional_features = { sculpture_material generic_material_wood decoration_material_inlay goblet_material }
}
brooch = {
slot = miscellaneous
required_features = { brooch_decoration decoration_material_wire }
optional_features = { brooch_centerpiece brooch_adornment decoration_material_gem }
can_reforge = no
}
necklace = {
slot = miscellaneous
required_features = { decoration_material_wire decoration_material_gem }
can_reforge = no
}
ring = {
slot = miscellaneous
required_features = { ring_decoration generic_material_metal }
optional_features = { ring_centerpiece ring_adornment decoration_material_wire decoration_material_gem }
can_reforge = no
}
animal_trinket = {
slot = miscellaneous
required_features = { animal_trinket_type }
can_reforge = no
}
bird_feather = {
slot = miscellaneous
required_features = { bird_feather_type }
can_reforge = no
}
#########################
# Court Artifacts #
#########################
# 'Sculptures', or large free-standing artifacts including statues, chests, cabinets, etc.
sculpture = {
slot = sculpture
default_visuals = statue
required_features = { sculpture_material }
optional_features = { generic_material_wood }
}
chest = {
slot = sculpture
required_features = { generic_material_wood wood_decoration }
optional_features = { decoration_pattern decoration_material_inlay_HSB }
}
box = {
slot = pedestal
required_features = { box_material box_decoration }
optional_features = { decoration_pattern decoration_material_inlay }
}
cabinet = {
slot = sculpture
required_features = { generic_material_wood wood_decoration }
optional_features = { decoration_pattern decoration_material_inlay_HSB}
}
goblet = {
slot = pedestal
required_features = { goblet_material decoration_material_gem }
}
scientific_apparatus = {
slot = sculpture
default_visuals = statue
required_features = { sculpture_material }
optional_features = { generic_material_wood decoration_material_inlay }
}
jug = {
slot = pedestal
required_features = { goblet_material decoration_material_inlay }
}
brooch_pedestal = {
slot = pedestal
required_features = { brooch_decoration decoration_material_wire }
optional_features = { brooch_centerpiece brooch_adornment decoration_material_gem }
}
necklace_pedestal = {
slot = pedestal
required_features = { decoration_material_wire decoration_material_gem }
}
bowl = {
slot = pedestal
required_features = { generic_material_metal decoration_pattern }
}
plate = {
slot = pedestal
required_features = { generic_material_metal decoration_pattern }
}
urn = {
slot = pedestal
required_features = { generic_material_earthware decoration_pattern }
}
tun_barrel = {
slot = sculpture
required_features = { generic_material_wood }
}
scepter_pedestal = {
slot = pedestal
}
# Small artifacts which should be displayed on a pedestal including goblets, large gemstones, reliquaries, etc.
pedestal = {
slot = pedestal
default_visuals = rock
}
# Wall decorations, including tapestries, animal hides, weapon displays, etc.
tapestry = {
slot = wall_big
required_features = { generic_material_cloth tapestry_scene }
}
animal_skull = {
slot = wall_small
required_features = { animal_skull_type generic_material_wood }
}
animal_hide = {
slot = wall_small
required_features = { animal_hide_type }
}
animal_hide_big = {
slot = wall_big
required_features = { animal_hide_type }
}
wall_big = {
slot = wall_big
default_visuals = wall_shield
}
wall_small = {
slot = wall_small
default_visuals = animal_trophy
}
wall_shield = {
slot = wall_small
default_visuals = wall_shield
required_features = { head_metal shaft_wood decoration_pattern decoration_material_inlay_HSB }
}
# kite shields are too big for wall_small
wall_shield_special = {
slot = wall_big
default_visuals = wall_shield
required_features = { head_metal shaft_wood decoration_pattern decoration_material_inlay_HSB }
}
wall_icon_court_large = {
slot = wall_big
default_visuals = icon_court_large
required_features = { icon_decoration }
}
wall_icon_court_small = {
slot = wall_small
default_visuals = icon_court_small
required_features = { icon_decoration }
}
# Thrones
throne = { # Any throne created mid-game through Inspirations must have these:
slot = throne
required_features = { generic_material_wood generic_material_cloth }
}
throne_special = { # Special historical thrones, such as Solomon's or Charlemagne's, do not enforce the material requirements due to their unique construction.
slot = throne
optional_features = { generic_material_wood generic_material_cloth }
}
# Books
book = {
slot = book
required_features = { book_subject book_cover_material }
optional_features = { book_topic book_title book_decoration decoration_pattern generic_material_wood decoration_material_gem decoration_material_inlay_HSB }
}
chronicle = {
slot = book
optional_features = { book_topic book_title book_decoration decoration_pattern generic_material_wood decoration_material_gem decoration_material_inlay_HSB }
}
# Alchemy
elixir = {
slot = pedestal
required_features = { decoration_pattern glass_decoration }
optional_features = { elixir_type decoration_material_inlay decoration_material_wire }
}
panacea = {
slot = pedestal
required_features = { box_material box_decoration }
optional_features = { decoration_pattern decoration_material_inlay }
}
philosophers_stone = {
slot = pedestal
required_features = { box_material box_decoration }
optional_features = { decoration_pattern decoration_material_inlay }
}
# Tournaments
pas_darmes_token = {
slot = miscellaneous
required_features = { generic_material_cloth decoration_pattern }
}
pas_darmes_spurs = {
slot = miscellaneous
required_features = { generic_material_metal }
}
tournament_favor = {
slot = miscellaneous
required_features = { generic_material_cloth decoration_pattern }
}
# Bows
longbow = {
slot = primary_armament
required_features = { longbow_wood bow_string }
}
composite = {
slot = primary_armament
required_features = { composite_wood composite_horn bow_string }
}
bow = {
slot = primary_armament
required_features = { bow_wood bow_string }
}
crossbow = {
slot = primary_armament
required_features = { bow_wood bow_string }
}

View file

@ -0,0 +1,13 @@
Structure:
key = {
slot = inventory slot type
# A feature from each of these groups will be assigned automatically on creation
required_features = { group group group }
# These feature groups can be added after creation in script
optional_features = { group group group }
# optional field with no gameplay effect. Only needed for automatic test artifact generation
default_visuals = visuals_key
}
The artifact_KEY is also used as a loc key in some contexts. E.G., "artifact_helmet"

View file

@ -0,0 +1,5 @@
sword_wenceslas = {
default_type = pedestal
icon = { reference = artifact_sword_wenceslas.dds }
asset = { reference = ep1_northern_sword_01_a_entity }
}

View file

@ -0,0 +1,26 @@
# Determines the visuals of an artifact and ties together 2d and 3d visuals
# Picks a random valid one based on the triggers, passes in the scopes from the creation/reforge like the text does
example = {
icon = "icon_name.dds"
asset = "asset_name"
# optional field with no gameplay effect. Only needed for automatic test artifact generation
default_type = type_key
icon = {
trigger = {
<trigger>
#root scope is the owner
#scope:artifact is the artifact being made
#scope:artifact.creator is how to access the creator when different from the owner
}
reference = "icon_name.dds"
}
asset = {
trigger = {
<trigger>
}
reference = "asset_name"
}
}