Crusader Kings 3 Dev Diary #30 - Event Scripting

Crusader Kings 3 Dev Diary #30 - Event Scripting

  • Pre order now!

    Paradox Development Studio brings you the sequel to one of the most popular strategy games ever made! Crusader Kings III is soon upon us and you can pre order it today!


    Releasing September 1st 2020

RelVleDy

CKII Static Portrait Guru
27 Badges
Jul 13, 2008
549
585
  • Prison Architect
  • Crusader Kings II: Holy Fury
  • Shadowrun Returns
  • Crusader Kings II: Jade Dragon
  • Crusader Kings II: Monks and Mystics
  • Tyranny: Archon Edition
  • Tyranny: Archon Edition
  • Crusader Kings II: Reapers Due
  • Stellaris
  • Crusader Kings II: Conclave
  • Crusader Kings II: Horse Lords
  • Pillars of Eternity
  • Crusader Kings II: Way of Life
  • Europa Universalis IV: Res Publica
  • Europa Universalis IV: Call to arms event
  • Europa Universalis IV: Wealth of Nations
  • Europa Universalis IV: Conquest of Paradise
  • Crusader Kings II: Sword of Islam
  • Crusader Kings II: Sunset Invasion
  • Crusader Kings II: Sons of Abraham
  • Crusader Kings II: The Republic
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: The Old Gods
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: Charlemagne
  • Crusader Kings II
I noticed in the code there's character facial expressions. As a modder, can we import static-images as portraits? I need to add anime waifus. Preferably, I'll have a static-image for each expression and I can code it to the use the appropriate one based on the situation.

If it doesn't support static-images, would I need 3D software? If so, what is recommended?
 
Last edited:

Princess Stabbity

Random Nonsense Generator
43 Badges
Oct 20, 2016
624
361
twitter.com
  • Crusader Kings II: Horse Lords
  • Crusader Kings II: Jade Dragon
  • Crusader Kings II: Monks and Mystics
  • Crusader Kings II: Reapers Due
  • Stellaris
  • Crusader Kings II: Conclave
  • Crusader Kings II: Way of Life
  • Crusader Kings II: Holy Fury
  • Crusader Kings II: Sunset Invasion
  • Age of Wonders: Planetfall Season pass
  • Crusader Kings II: The Republic
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: The Old Gods
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: Charlemagne
  • Stellaris: Galaxy Edition
  • Stellaris: Galaxy Edition
  • Stellaris: Digital Anniversary Edition
  • Stellaris: Leviathans Story Pack
  • Stellaris - Path to Destruction bundle
  • Stellaris: Synthetic Dawn
  • Stellaris: Distant Stars
  • Stellaris: Humanoids Species Pack
  • Stellaris: Megacorp
  • Stellaris: Apocalypse
  • Stellaris: Lithoids
  • Stellaris: Ancient Relics
  • Surviving Mars
  • Surviving Mars: Digital Deluxe Edition
  • Surviving Mars: First Colony Edition
  • Surviving Mars: First Colony Edition
  • Crusader Kings II
  • Crusader Kings II: Sons of Abraham
  • Crusader Kings II: Sword of Islam
  • Imperator: Rome
  • Imperator: Rome Deluxe Edition
  • Imperator: Rome - Magna Graecia
  • Age of Wonders: Planetfall Sign Up
  • Age of Wonders: Planetfall Premium edition
  • Age of Wonders: Planetfall Deluxe edition
  • Age of Wonders: Planetfall
  • Age of Wonders: Planetfall - Revelations
  • Age of Wonders III
>O< !!!

AAaaaah! I want ALL OF THIS in Stellaris! These two functions alone...


...fulfil most of my scripting wishlist and do it better than the clunky array setup I would have settled on!

Now I want to make mods for two Paradox games simultanously...
Ehehe... I'm in danger.
 

blackninja9939

Programmer
69 Badges
Aug 28, 2013
2.254
2.663
  • Europa Universalis IV: Mare Nostrum
  • Crusader Kings II: Charlemagne
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: Sons of Abraham
  • Crusader Kings II: The Old Gods
  • Tyranny: Archon Edition
  • Crusader Kings II: Way of Life
  • Europa Universalis IV: Common Sense
  • Crusader Kings II: Horse Lords
  • Stellaris: Lithoids
  • Europa Universalis IV: Dharma
  • Crusader Kings II: Conclave
  • Stellaris
  • Stellaris Sign-up
  • Hearts of Iron IV: Cadet
  • Hearts of Iron IV: Colonel
  • Crusader Kings II: Reapers Due
  • Europa Universalis IV: Rights of Man
  • Magicka: Wizard Wars Founder Wizard
  • Crusader Kings II: Monks and Mystics
  • Europa Universalis IV: Mandate of Heaven
  • BATTLETECH
  • Surviving Mars
  • Stellaris: Synthetic Dawn
  • Europa Universalis IV: Cradle of Civilization
  • Hearts of Iron IV: Expansion Pass
  • Stellaris: Apocalypse
  • Shadowrun Returns
  • Europa Universalis IV: Rule Britannia
  • Crusader Kings II: The Republic
  • Stellaris: Ancient Relics
  • Imperator: Rome
  • Prison Architect
  • Mount & Blade: Warband
  • Stellaris: Distant Stars
  • Imperator: Rome Sign Up
  • Crusader Kings II: Holy Fury
  • Teleglitch: Die More Edition
  • Victoria 2
  • Europa Universalis IV: Golden Century
  • Imperator: Rome Deluxe Edition
  • Cities: Skylines
  • Europa Universalis IV: El Dorado
  • Age of Wonders: Planetfall
  • Crusader Kings II: Sunset Invasion
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: Sword of Islam
  • Crusader Kings II
  • Crusader Kings II: Jade Dragon
Can you clarify if Mean Time To Happen is reduced to a small number of events, supported but not used in vanilla, or completely removed?
Completely removed, it is gone entirely in Imperator too and I don't see it ever making a come back in any future games as on a Jomini level the event class and manager does not handle mean time to happen, it is just objectively worse than on actions in pretty much every way:
  • Bad on performance
  • Not reliable to fire
  • Cannot weight relative to other events easily
  • Overall harder to maintain and control
 

Rockphed

Uncultured Barbarian
16 Badges
Jan 31, 2017
950
7
  • Crusader Kings II
  • Crusader Kings II: Way of Life
  • Crusader Kings II: Horse Lords
  • Crusader Kings II: Reapers Due
  • Crusader Kings II: Monks and Mystics
  • Crusader Kings II: Jade Dragon
  • Shadowrun Returns
  • Crusader Kings II: Holy Fury
  • Crusader Kings II: Charlemagne
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: The Old Gods
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: The Republic
  • Crusader Kings II: Sons of Abraham
  • Crusader Kings II: Sunset Invasion
  • Crusader Kings II: Sword of Islam
Completely removed, it is gone entirely in Imperator too and I don't see it ever making a come back in any future games as on a Jomini level the event class and manager does not handle mean time to happen, it is just objectively worse than on actions in pretty much every way:
  • Bad on performance
  • Not reliable to fire
  • Cannot weight relative to other events easily
  • Overall harder to maintain and control
But this doesn't mean that we will be seeing all events on the 2nd of the month, right? Just that on the second an event fires and selects all the other events that need to happen to our poor, hapless character this month.
 
  • 1Like
Reactions: BrotherJonathan

jumbi

Elder Councillor & Servant of the Masters
87 Badges
May 18, 2013
486
149
  • Stellaris: Galaxy Edition
  • Victoria 2: A House Divided
  • Victoria 2: Heart of Darkness
  • Europa Universalis IV: Pre-order
  • Cities: Skylines - After Dark
  • Europa Universalis IV: Cossacks
  • Cities: Skylines - Snowfall
  • Europa Universalis IV: Mare Nostrum
  • Stellaris
  • A Game of Dwarves
  • Stellaris: Galaxy Edition
  • Steel Division: Normand 44 - Second Wave
  • Europa Universalis IV: Rights of Man
  • Tyranny: Archon Edition
  • Tyranny: Archon Edition
  • Crusader Kings II: Monks and Mystics
  • Stellaris - Path to Destruction bundle
  • Crusader Kings II: Sons of Abraham
  • Age of Wonders III
  • Crusader Kings II: Sunset Invasion
  • Crusader Kings II: Sword of Islam
  • Europa Universalis IV: Art of War
  • Crusader Kings II: Legacy of Rome
  • Europa Universalis IV: Conquest of Paradise
  • Europa Universalis IV: Wealth of Nations
  • Crusader Kings II: Charlemagne
  • Crusader Kings II: The Republic
  • Crusader Kings II: The Old Gods
  • Stellaris: Synthetic Dawn
  • Crusader Kings II: Rajas of India
  • Crusader Kings II
  • Magicka
  • Europa Universalis IV: Res Publica
  • Crusader Kings II: Reapers Due
  • Stellaris: Galaxy Edition
  • Tyranny: Gold Edition
  • Stellaris: Digital Anniversary Edition
  • Stellaris: Leviathans Story Pack
  • Cities: Skylines - Natural Disasters
  • Hearts of Iron IV: Field Marshal
  • Hearts of Iron IV: Colonel
  • Stellaris Sign-up
  • Crusader Kings II: Conclave
  • Crusader Kings II: Horse Lords
  • Europa Universalis IV: Common Sense
  • Pillars of Eternity
  • Crusader Kings II: Way of Life
  • Europa Universalis IV: El Dorado
  • Cities: Skylines
But this doesn't mean that we will be seeing all events on the 2nd of the month, right? Just that on the second an event fires and selects all the other events that need to happen to our poor, hapless character this month.
In the custom civil war on action example, it looks like you can provide a custom range for the events to fire in, 6 to 12 months in this case (or I'm mistaken and it'll trigger once in 6 months and once again in 12, but the former seems more useful and likely to me)
 

blackninja9939

Programmer
69 Badges
Aug 28, 2013
2.254
2.663
  • Europa Universalis IV: Mare Nostrum
  • Crusader Kings II: Charlemagne
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: Sons of Abraham
  • Crusader Kings II: The Old Gods
  • Tyranny: Archon Edition
  • Crusader Kings II: Way of Life
  • Europa Universalis IV: Common Sense
  • Crusader Kings II: Horse Lords
  • Stellaris: Lithoids
  • Europa Universalis IV: Dharma
  • Crusader Kings II: Conclave
  • Stellaris
  • Stellaris Sign-up
  • Hearts of Iron IV: Cadet
  • Hearts of Iron IV: Colonel
  • Crusader Kings II: Reapers Due
  • Europa Universalis IV: Rights of Man
  • Magicka: Wizard Wars Founder Wizard
  • Crusader Kings II: Monks and Mystics
  • Europa Universalis IV: Mandate of Heaven
  • BATTLETECH
  • Surviving Mars
  • Stellaris: Synthetic Dawn
  • Europa Universalis IV: Cradle of Civilization
  • Hearts of Iron IV: Expansion Pass
  • Stellaris: Apocalypse
  • Shadowrun Returns
  • Europa Universalis IV: Rule Britannia
  • Crusader Kings II: The Republic
  • Stellaris: Ancient Relics
  • Imperator: Rome
  • Prison Architect
  • Mount & Blade: Warband
  • Stellaris: Distant Stars
  • Imperator: Rome Sign Up
  • Crusader Kings II: Holy Fury
  • Teleglitch: Die More Edition
  • Victoria 2
  • Europa Universalis IV: Golden Century
  • Imperator: Rome Deluxe Edition
  • Cities: Skylines
  • Europa Universalis IV: El Dorado
  • Age of Wonders: Planetfall
  • Crusader Kings II: Sunset Invasion
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: Sword of Islam
  • Crusader Kings II
  • Crusader Kings II: Jade Dragon
But this doesn't mean that we will be seeing all events on the 2nd of the month, right? Just that on the second an event fires and selects all the other events that need to happen to our poor, hapless character this month.
Not really, the events can be delayed to run at a later date in a random range instead of on the same date. And of course this is only for various pulse events, reactive on actions and being part of other people's event chains will be at entirely different date ranges still.
 

Penguin Zero

Sergeant
57 Badges
Dec 22, 2014
52
61
  • Crusader Kings II
  • Stellaris: Synthetic Dawn
  • Europa Universalis IV: Third Rome
  • Europa Universalis IV: Rights of Man
  • Stellaris: Galaxy Edition
  • Stellaris: Galaxy Edition
  • Europa Universalis IV: Mare Nostrum
  • Europa Universalis IV: Pre-order
  • Cities: Skylines Deluxe Edition
  • Europa Universalis IV: Res Publica
  • Europa Universalis IV: Call to arms event
  • Europa Universalis IV: Wealth of Nations
  • Europa Universalis IV: Art of War
  • Crusader Kings II: Sword of Islam
  • Europa Universalis IV: Conquest of Paradise
  • Crusader Kings II: Sunset Invasion
  • Crusader Kings II: Sons of Abraham
  • Crusader Kings II: Charlemagne
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: The Old Gods
  • Crusader Kings II: The Republic
  • Crusader Kings II: Rajas of India
  • Stellaris - Path to Destruction bundle
  • Stellaris: Megacorp
  • Europa Universalis IV: Mandate of Heaven
  • Surviving Mars
  • Europa Universalis IV: Cradle of Civilization
  • Stellaris: Lithoids
  • Stellaris: Apocalypse
  • Europa Universalis IV: Rule Britannia
  • Crusader Kings II: Holy Fury
  • Stellaris: Distant Stars
  • Shadowrun Returns
  • Shadowrun: Dragonfall
  • Surviving Mars: First Colony Edition
  • Crusader Kings II: Monks and Mystics
  • Stellaris: Leviathans Story Pack
  • Stellaris: Digital Anniversary Edition
  • Crusader Kings II: Reapers Due
  • Stellaris Sign-up
  • Stellaris: Galaxy Edition
  • Stellaris
  • Crusader Kings II: Conclave
  • Europa Universalis IV: Cossacks
  • Crusader Kings II: Horse Lords
  • Europa Universalis IV: Common Sense
  • Pillars of Eternity
  • Crusader Kings II: Way of Life
  • Europa Universalis IV: El Dorado
One thing that occurred to me looking at the shouty-man example: will there be a way to set up those lists ordered by numbers of some connection a character has? For instance, could you make an ordered list of rulers in your realm by the number of direct vassals they have, or a list of people sorted by how many friends they have, or a list of Muslim rulers sorted by number of wives? I've got very little experience modding, but I can see all sorts of uses for those in events.
 
  • 1Like
Reactions: BrotherJonathan

LordofLight

Major
4 Badges
Sep 6, 2015
524
1.210
  • Crusader Kings II
  • Crusader Kings II: Horse Lords
  • Imperator: Rome
  • Crusader Kings II: The Old Gods
That does look redundant. Unless stuff other than culture can go into has_culture?
 
  • 1Like
Reactions: BrotherJonathan

Tuo

A third-rate duelist
29 Badges
Feb 14, 2017
81
348
  • Crusader Kings II: Charlemagne
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: The Old Gods
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: The Republic
  • Crusader Kings II: Sons of Abraham
  • Crusader Kings II: Sword of Islam
  • Crusader Kings II
  • Crusader Kings II: Monks and Mystics
  • Crusader Kings II: Holy Fury
  • Cities: Skylines - Mass Transit
  • Hearts of Iron IV: Death or Dishonor
  • Cities: Skylines - Green Cities
  • Crusader Kings II: Jade Dragon
  • Hearts of Iron IV: Expansion Pass
  • Cities: Skylines - Parklife Pre-Order
  • Cities: Skylines - Parklife
  • Cities: Skylines Industries
  • Hearts of Iron IV: Together for Victory
  • Cities: Skylines - Natural Disasters
  • Tyranny: Archon Edition
  • Crusader Kings II: Reapers Due
  • Hearts of Iron IV: Cadet
  • Cities: Skylines - Snowfall
  • Crusader Kings II: Conclave
  • Cities: Skylines - After Dark
  • Crusader Kings II: Horse Lords
  • Crusader Kings II: Way of Life
  • Cities: Skylines
Code:
has_culture = culture:french
has_faith = faith:ashari
Nani? Why the extra faith:/culture: ?
I would hazard a guess it's because custom faiths can have custom names, and as such you could have a faith called "french" - that is, if custom faith names are identified as such, and not as, say, "customcatholicfaith1".
 

Waverunner

0111000001100101011011100110100101110011
66 Badges
Dec 2, 2014
101
26
  • Cities: Skylines - After Dark
  • Stellaris: Galaxy Edition
  • Crusader Kings II: Monks and Mystics
  • Surviving Mars
  • Hearts of Iron IV Sign-up
  • Hearts of Iron IV: Cadet
  • Hearts of Iron IV: Colonel
  • Hearts of Iron IV: Field Marshal
  • Crusader Kings II: Reapers Due
  • Europa Universalis IV: Rights of Man
  • Stellaris: Digital Anniversary Edition
  • Stellaris: Leviathans Story Pack
  • Europa Universalis IV: Mandate of Heaven
  • Stellaris
  • Hearts of Iron IV: Death or Dishonor
  • Europa Universalis IV: Dharma
  • Europa Universalis IV: Cradle of Civilization
  • Crusader Kings II: Jade Dragon
  • Hearts of Iron IV: Expansion Pass
  • Stellaris: Humanoids Species Pack
  • Stellaris: Apocalypse
  • Europa Universalis IV: Rule Britannia
  • Surviving Mars: Digital Deluxe Edition
  • Surviving Mars: First Colony Edition
  • Cities: Skylines - Parklife
  • Crusader Kings II: Holy Fury Pre-order
  • Hearts of Iron IV: La Resistance
  • Stellaris: Lithoids
  • Stellaris: Megacorp
  • Imperator: Rome Deluxe Edition
  • Surviving Mars: First Colony Edition
  • Imperator: Rome Sign Up
  • Crusader Kings III Referal
  • Cities: Skylines
  • Europa Universalis IV: El Dorado
  • Magicka: Wizard Wars Founder Wizard
  • Crusader Kings II: Way of Life
  • Europa Universalis IV: Common Sense
  • Crusader Kings II: Horse Lords
  • Stellaris: Distant Stars
  • Crusader Kings II: Conclave
  • Europa Universalis IV: Mare Nostrum
  • Stellaris: Galaxy Edition
  • Crusader Kings II
  • Crusader Kings II: Charlemagne
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: The Old Gods
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: The Republic
Thank you, this is the most interesting dev diary yet. Moddability is one of the reasons CK2 is so popular. I cannot wait to re-experience ATE and ASOIF mods in CK3.
 

darkporter85

Recruit
2 Badges
Dec 21, 2013
2
8
  • Hearts of Iron III
  • Hearts of Iron III: Their Finest Hour
Throughout Medieval History Cavalry played a paramount role in warfare. Seeing footman sprites in a game about Medieval times is very sad. So, Paradox , please can you make cavalry sprites instead of these. It is all about immersion and such. It was so disappointing to see "infantry" as your army representation on the game map that i started drinking again(been sober for the past three months )(jk). A mounted warrior is so symbolic to that period that you guys really must implement it. From the steppes of Mongolia to the arid Moroccan flatland. From Denmark to Italia a warrior on a HORSE was dominating the battlefields of that period. So WHY ON EARTH FOOTMAN SPRITES?? When you think of that period you imagine Norman proto knights with a spear and a tear shield, or Teutons with their intimidating helmets (i am Russian, so read Sergei Eisenstein: Aleksandr Nevsky). English knights with lions on red or French with lilies on blue. Mounted Mongols with their steppe horses, bringing a rain of arrows on their foes, Arabs on their graceful horses. BUT NOT FOOTMEN.
I am opening a campaign against footman sprites. Lord Jesus help me in my endeavors.
 

pcuser1584789

First Lieutenant
On Probation
33 Badges
Jan 5, 2017
206
28
  • Crusader Kings II
  • Cities: Skylines Deluxe Edition
  • Semper Fi
  • Europa Universalis IV: Res Publica
  • Hearts of Iron III Collection
  • Hearts of Iron III: Their Finest Hour
  • Hearts of Iron III
  • For the Motherland
  • Europa Universalis IV: Call to arms event
  • Europa Universalis IV: Wealth of Nations
  • Crusader Kings II: Sword of Islam
  • Crusader Kings II: Sunset Invasion
  • Crusader Kings II: Sons of Abraham
  • Crusader Kings II: The Republic
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: The Old Gods
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: Charlemagne
  • Europa Universalis IV: Conquest of Paradise
  • Prison Architect
  • Crusader Kings II: Holy Fury
  • Cities: Skylines Industries
  • Crusader Kings II: Jade Dragon
  • Cities: Skylines - Mass Transit
  • Crusader Kings II: Monks and Mystics
  • Crusader Kings II: Reapers Due
  • Cities: Skylines - Snowfall
  • Crusader Kings II: Conclave
  • Cities: Skylines - After Dark
  • Crusader Kings II: Horse Lords
  • Crusader Kings II: Way of Life
  • Cities: Skylines
this is not actual scripting, these are data structures and we can set values... you should provide a .NET api, there are many things I am unhappy with in ck2 I wish I could just fix myself. Give us a .NET api and let us fix the game ourselves

this code is terrible, let us use a proper language, any normal programming language, python whatever, anything but this!
 

blackninja9939

Programmer
69 Badges
Aug 28, 2013
2.254
2.663
  • Europa Universalis IV: Mare Nostrum
  • Crusader Kings II: Charlemagne
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: Sons of Abraham
  • Crusader Kings II: The Old Gods
  • Tyranny: Archon Edition
  • Crusader Kings II: Way of Life
  • Europa Universalis IV: Common Sense
  • Crusader Kings II: Horse Lords
  • Stellaris: Lithoids
  • Europa Universalis IV: Dharma
  • Crusader Kings II: Conclave
  • Stellaris
  • Stellaris Sign-up
  • Hearts of Iron IV: Cadet
  • Hearts of Iron IV: Colonel
  • Crusader Kings II: Reapers Due
  • Europa Universalis IV: Rights of Man
  • Magicka: Wizard Wars Founder Wizard
  • Crusader Kings II: Monks and Mystics
  • Europa Universalis IV: Mandate of Heaven
  • BATTLETECH
  • Surviving Mars
  • Stellaris: Synthetic Dawn
  • Europa Universalis IV: Cradle of Civilization
  • Hearts of Iron IV: Expansion Pass
  • Stellaris: Apocalypse
  • Shadowrun Returns
  • Europa Universalis IV: Rule Britannia
  • Crusader Kings II: The Republic
  • Stellaris: Ancient Relics
  • Imperator: Rome
  • Prison Architect
  • Mount & Blade: Warband
  • Stellaris: Distant Stars
  • Imperator: Rome Sign Up
  • Crusader Kings II: Holy Fury
  • Teleglitch: Die More Edition
  • Victoria 2
  • Europa Universalis IV: Golden Century
  • Imperator: Rome Deluxe Edition
  • Cities: Skylines
  • Europa Universalis IV: El Dorado
  • Age of Wonders: Planetfall
  • Crusader Kings II: Sunset Invasion
  • Crusader Kings II: Legacy of Rome
  • Crusader Kings II: Sword of Islam
  • Crusader Kings II
  • Crusader Kings II: Jade Dragon
this is not actual scripting, these are data structures and we can set values... you should provide a .NET api, there are many things I am unhappy with in ck2 I wish I could just fix myself. Give us a .NET api and let us fix the game ourselves

this code is terrible, let us use a proper language, any normal programming language, python whatever, anything but this!
> these are data structures and we can set values
I mean, that sums up the core of like most of all programming languages... Our scripting language is even turing complete... ;)

A .NET, python, lua or any other language API is very unlikely for the simple fact we don't internally use that. The amount of time it would take to re-expose everything via another language is just not a time investment we can ever really justify, along with the up front time cost that also then becomes another thing to have to maintain and we'd also then need to take the overhead of those languages into account when working on performance.

And I'd highly doubt it will fix the things you likely want to script anyway, its not going to un-hardcode all the things that are already hardcoded which is the impression I get from you pointing out short comings of the scripting in CK2.

Our script language is by no means perfect, but its plain english and very easy for non programmers to get to grips with to work to make things, as well as easy for us on the programming side to add new triggers and effects etc.