• We have updated our Community Code of Conduct. Please read through the new rules for the forum that are an integral part of Paradox Interactive’s User Agreement.
Main Post

Shirokitsune

Sergeant
84 Badges
May 24, 2016
55
21
  • Crusader Kings II: Charlemagne
  • Europa Universalis IV: Cradle of Civilization
  • Stellaris: Synthetic Dawn
  • Europa Universalis IV: Third Rome
  • Crusader Kings II: Jade Dragon
  • Stellaris - Path to Destruction bundle
  • Stellaris: Leviathans Story Pack
  • Stellaris
  • Europa Universalis IV: Mare Nostrum
  • Cities: Skylines - Snowfall
  • Europa Universalis IV: Cossacks
  • Cities: Skylines - After Dark
  • Europa Universalis IV: Pre-order
  • Victoria 2: Heart of Darkness
  • Victoria 2: A House Divided
  • Crusader Kings II
  • Crusader Kings II: Sons of Abraham
  • Victoria: Revolutions
  • Crusader Kings II: Sunset Invasion
  • Crusader Kings II: Sword of Islam
  • Crusader Kings II: The Republic
  • Europa Universalis IV: Art of War
  • Europa Universalis IV: Conquest of Paradise
  • Crusader Kings II: Rajas of India
  • Crusader Kings II: The Old Gods
  • Europa Universalis IV: Wealth of Nations
  • Crusader Kings II: Legacy of Rome
  • Europa Universalis IV: Call to arms event
  • Europa Universalis IV: Res Publica
  • Europa Universalis IV: Mandate of Heaven
  • Steel Division: Normandy 44
  • Steel Division: Normand 44 Sign-up
  • Hearts of Iron IV: Death or Dishonor
  • Crusader Kings II: Monks and Mystics
  • Hearts of Iron IV: Together for Victory
  • Cities: Skylines - Natural Disasters
  • Hearts of Iron IV Sign-up
  • Stellaris: Digital Anniversary Edition
  • Europa Universalis IV: Rights of Man
  • Hearts of Iron IV: No Step Back
  • Hearts of Iron IV: Cadet
  • Europa Universalis IV
  • Crusader Kings II: Conclave
  • Crusader Kings II: Horse Lords
  • Europa Universalis IV: Common Sense
  • Pillars of Eternity
  • Crusader Kings II: Way of Life
  • Magicka: Wizard Wars Founder Wizard
  • Europa Universalis IV: El Dorado
  • Cities: Skylines
This mod greatly expands the reports of the chronicle. I hope this will prove to be an invaluable mod to many roleplayers.
Customizable in game!

Download Vanilla Chronicle Overhaul Alpha Release 26/05/2019 for version 3.1.1
Download



Requirements: Charlemagne DLC
Detailed Info:
The chronicle will report a lot of things. At the default level, it's going to report things about yourself, but you can customize somewhat with a decision.
4Chs1TH.jpg
mgC0OWT.jpg
There are two levels of 'chronicle reporting'. Character marked with a major interest will be reported like you (so use it sparingly! or not at all), while minor interest will send just very important reports like wars, marriages, and death. You will also be notified anytime a marked character dies. You can also select 'Nominate in chronicle' to send a short one-time report of the character.
wbFl8dT.jpg

About the progress of the mod. It's already reporting so many things that's difficult to say. I've just started reporting decisions and major events. I'm slowly working on customizing the war reports, as of now they are just barely localized. I guess the best way to judge the mod is to download and try it. Wonders and crusades are still not reported. A good part of the on_action file has been already done.

BEWARE THAT IT SHOULD BE USED FOR VANILLA GAME.

I'm editing so many files that I think a lot of mods will be incompatible, and sorry but I'm not going to provide compatibility patches. This is already enough work.
Steam workshop will come later.
I'm open to suggestions and obviously, critics. English is not my mother tongue so if you find any grammar horror please come here, slap me and report it.
I've playtested what I could and it should be as bug free as possible.
The mod is compatible with multiplayer, however please note that the chronicle will report the same things for all players.

I'll edit this later to add more info.
 
Last edited:
This morning I worked a little on localizing some casus belli and I localized the Claim, Claim for Other, and Holy War.
Here is the code snippet, if someone wants to have a look.
Code:
CHRONICLE_WAR_CB_CLAIM_ATTACKER_ON_ADD_VCOM;[war_attacker.GetDeclarationWarVCOM][war_attacker.GetRealRulerVCOM] declared war on [war_defender.GetBestNameVCOM] to press [war_attacker.GetHerHis] rightful claim on the [war_title_contested.GetFullName]. It thus began the [war_defender.GetWarAdjectiveVCOM] Claim on [war_title_contested.GetName] War on [GetDateText].;;;;;;;;;;;;;x;;
CHRONICLE_WAR_CB_CLAIM_ATTACKER_ON_SUCCESS_VCOM;After a tense meeting, [war_defender.GetRealRulerVCOM] conceded that [war_defender.GetHerHis] position had become unbearable and that the [war_defender.GetWarAdjectiveVCOM] Claim on [war_title_contested.GetName] War had to finish. [war_attacker.GetBestNameVCOM] successfully claimed the [war_title_contested.GetFullName], and the ownership of such title was passed on to [war_attacker.GetHerHim] on [GetDateText].;;;;;;;;;;;;;x;;
CHRONICLE_WAR_CB_CLAIM_ATTACKER_ON_FAIL_VCOM;As the [war_defender.GetWarAdjectiveVCOM] Claim on [war_title_contested.GetName] War dragged on without an end in sight, [war_attacker.GetRealRulerVCOM] and [war_defender.GetRealRulerVCOM] agreed that a prolonged war effort was not in their interest, thus the hostilities ended on [GetDateText] on the terms of a White Peace.;;;;;;;;;;;;;x;;
CHRONICLE_WAR_CB_CLAIM_ATTACKER_ON_REVERSE_VCOM;After some time, it was obvious that [war_attacker.GetRealRulerVCOM] heavily miscalculated the strenght of [war_defender.GetRealRulerVCOM], whom forced the claimant to abandon the foolish endeavour. The [war_defender.GetWarAdjectiveVCOM] Claim on [war_title_contested.GetName] War ended on [GetDateText] with the undisputable victory of the defender.;;;;;;;;;;;;;x;;
CHRONICLE_WAR_CB_OTHER_CLAIM_ATTACKER_ON_ADD_VCOM;[war_attacker.GetDeclarationWarVCOM][war_attacker.GetRealRulerVCOM] declared war on [war_defender.GetBestNameVCOM] to press the rightful claim of [war_claimant.GetBestNameVCOM] on the [war_title_contested.GetFullName]. It thus began the [war_defender.GetWarAdjectiveVCOM] War for [war_claimant.GetFirstName]'s Claim on [war_title_contested.GetName] on [GetDateText].;;;;;;;;;;;;;x;;
CHRONICLE_WAR_CB_OTHER_CLAIM_ATTACKER_ON_SUCCESS_VCOM;After a tense meeting, [war_defender.GetRealRulerVCOM] conceded that [war_defender.GetHerHis] position had become unbearable and that the [war_defender.GetWarAdjectiveVCOM] War for [war_claimant.GetFirstName]'s Claim on [war_title_contested.GetName] had to finish. [war_attacker.GetRealRulerVCOM] successfully claimed the [war_title_contested.GetFullName], and the ownership of such title was passed on to [war_claimant.GetBestNameVCOM] on [GetDateText].;;;;;;;;;;;;;x;;
CHRONICLE_WAR_CB_OTHER_CLAIM_ATTACKER_ON_FAIL_VCOM;As the [war_defender.GetWarAdjectiveVCOM] War for [war_claimant.GetFirstName]'s Claim on [war_title_contested.GetName] dragged on without an end in sight, [war_attacker.GetRealRulerVCOM] and [war_defender.GetRealRulerVCOM] agreed that a prolonged war effort was not in their interest, thus the hostilities ended on [GetDateText] on the terms of a White Peace.;;;;;;;;;;;;;x;;
CHRONICLE_WAR_CB_OTHER_CLAIM_ATTACKER_ON_REVERSE_VCOM;After some time, it was obvious that [war_attacker.GetRealRulerVCOM] heavily miscalculated the strenght of [war_defender.GetRealRulerVCOM], whom forced [war_claimant.GetBestNameVCOM] and [war_claimant.GetHerHis] backer to abandon their foolish endeavour. The [war_defender.GetWarAdjectiveVCOM] War for [war_claimant.GetFirstName]'s Claim on [war_title_contested.GetName] ended on [GetDateText] with the undisputable victory of the defender.;;;;;;;;;;;;;x;;
CHRONICLE_WAR_CB_RELIGIOUS_ATTACKER_ON_ADD_VCOM;[war_attacker.GetDeclarationWarVCOM][war_attacker.GetRealRulerVCOM] declared war upon [war_defender.GetBestNameVCOM] in the name of [war_attacker.Religion.GetRandomGodNameCap]. Fanatical [war_attacker.Religion.GetName] [war_attacker.Religion.GetPriestTitle]s started calling any able bodied man to arms to fight off the [war_defender.Religion.GetName] menace. It thus began the [war_attacker.PrimaryTitle.GetAdjective] Holy War for [war_title_contested.GetName] on [GetDateText].;;;;;;;;;;;;;x;;
CHRONICLE_WAR_CB_RELIGIOUS_ATTACKER_ON_SUCCESS_VCOM;[war_attacker.Religion.GetRandomGodNameCap] blessed [war_attacker.GetRealRulerVCOM] with a devastating victory. The onslaught had been terrible, but the [war_defender.Religion.GetName] followers were successfully driven off [war_title_contested.GetName]. [war_defender.GetBestNameVCOM] lost any sign of autorithy over the disputed land, and the [war_attacker.PrimaryTitle.GetAdjective] Holy War for [war_title_contested.GetName] was finally over on [GetDateText].;;;;;;;;;;;;;x;;
CHRONICLE_WAR_CB_RELIGIOUS_ATTACKER_ON_FAIL_VCOM;After some time, it was clear that despite [war_attacker.Religion.GetRandomGodNameCap]'s blessing, [war_attacker.GetRealRulerVCOM] couldn't manage to drive the [war_defender.Religion.GetName] followers off [war_title_contested.GetName]. A meeting was arranged between the diplomats of the two realms and it was agreed to end the ongoing hostilities on [GetDateText] on the terms of a White Peace.;;;;;;;;;;;;;x;;
CHRONICLE_WAR_CB_RELIGIOUS_ATTACKER_ON_REVERSE_VCOM;The fervor and holy rage of the [war_defender.Religion.GetName] followers were obstacles too high to overcome for [war_attacker.GetRealRulerVCOM], whose men and women died in vain. In a humiliating treaty for all the [war_attacker.Religion.GetName] world, [war_defender.GetRealRulerVCOM] forced the enemy to admit total defeat. The [war_attacker.PrimaryTitle.GetAdjective] Holy War for [war_title_contested.GetName] was over on [GetDateText].;;;;;;;;;;;;;x;;

Examples...
smUdSi8.jpg
WwTVmWN.jpg
 
Useful to hold track of everything that happend now it only needs a HIP com-patch from somebody how has the skill to make that possible
 
That would be nice
 
Simple guide to Compatibility Patches
There are two major custom triggers I use, defined as...
Code:
vcom_is_major_interest = {
    OR = {
        ai = no
        has_character_flag = VCOM_major_interest
    }
}

Code:
vcom_is_any_interest = {
    OR = {
        ai = no
        has_character_flag = VCOM_major_interest
        has_character_flag = VCOM_minor_interest
    }
}

Reporting an event becomes something like this:

Code:
# Blot Begins! (Liege)
character_event = {
    id = TOG.604
    desc = EVTDESC_TOG_604
    picture = GFX_evt_viking_throneroom_oldgods
    border = GFX_event_normal_frame_religion
  
    is_triggered_only = yes
  
    hide_from = yes
  
    option = {
        name = EVTOPTA_TOG_604
        hidden_tooltip = {
            if = {
                limit = {
                    any_courtier = {
                        prisoner = yes
                        host = { character = ROOT }
                        age = 16
                    }
                }
                random_courtier = {
                    limit = {
                        prisoner = yes
                        host = { character = ROOT }
                        age = 16
                    }
                    character_event = { id = TOG.606 days = 5 }
                }
            }
            if = {
                limit = {
                    NOT = {
                        any_courtier = {
                            prisoner = yes
                            host = { character = ROOT }
                            age = 16
                        }
                    }
                }
                character_event = { id = TOG.634 days = 5 }
            }
        }
        custom_tooltip = { text = blot_begins }
        if = {
            limit = { vcom_is_major_interest = yes }
            any_player = {
                chronicle = {
                    entry = CHRONICLE_HELD_BLOT_VCOM
                    picture = [Root.GetID]
                }
            }
        }
    }
}

Simply use one of the triggers on the right target then create the chronicle entry in a any_player = { } scope.

I have also written down a bunch of custom localisation, but the main one I use is GetBestNameVCOM. It's used like this.

Code:
CHRONICLE_HELD_BLOT_VCOM;[Root.GetBestNameVCOM] has decided to hold a great blot at [Root.Capital.GetName] on [GetDateText]. A Blot is a sacrifice offered to the Norse gods and/or the spirits of the land, homestead, or clan.;;;;;;;;;;;;;x;;

A similar custom (powered-up!) localisation is GetRealRulerVCOM. It reports the name of the character (using my GetBestNameVCOM logic), or her/his regent if one is in charge in that moment. I've made it just the other day, and I think I will replace a bunch of GetBestNameVCOM with GetRealRulerVCOM.
 
Last edited:
Also, I've pushed a little update.
Now legitimizing bastards creates a report. Also included the war localisation I've written above and added reports for on_actions split clan, absorb clan, blood oath and settle feud.
 
Last edited:
Question are Great Holy Wars a own entry and when yes have they flavour like
"After X years the 1st.Crusade was won against [main enemy] and [Person who holds the crusaderkingdom] is now king of [Crusaderkingdome name]."