Welcome to a dev diary I’ve been champing at the bit to write for months! Coming with our next Flavor Pack "Fate of Iberia" is a new mechanic called the Struggle which will propose new challenges for the rulers within the Iberian peninsula.
A struggle is a long-form conflict (generally not just a war, though they likely include them) covering a particular chunk of the map. They have different phases, each of which have different variant gameplay rules (e.g., “holy wars are disabled”, “characters of different religions may marry without”, or “Jerusalem can’t declare or be declared war on”).
Phases progress between each other by way of catalysts, specific gameplay actions (“declare war on an involved character”, “two involved characters become soulmates”, etc.) that accrue points towards a future phase. When enough points are accrued, the phase changes to the new one.
Struggles can be resolved, permanently affecting their area in some way, through dramatic and difficult ending decisions.
They are assumed to last at least a couple of centuries: a conqueror carving out a new realm from the ruins of an old giant wouldn’t be a struggle by itself, but if it includes dramatic aftershocks that last for generations, then it just might be.
Philosophy
So why are we introducing this mechanic attached to a flavour pack? Well, simply put, we didn’t think we could do the historical realities of Iberia justice without something like this.
The changing moods and temperaments of the peninsula over different decades, the way particular activities fluctuated between oddly permissive (by the standards of much of the rest of the world) and intensely strict, the role of notable characters and their policies in shaping the shifting tides of public opinion whether intentionally or not…
Medieval Iberia is just such a fascinating smorgasbord of mercurial special rules that we had to create a system that would allow us to model them, one that guided roleplay whilst giving it consequences, and provided default end goals for players other than just conquering all of Hispania.
Though Iberia badly needed such a thing, it would have been a waste to create a system tailored for only Iberia. Complex and shifting local circumstances and long-form conflicts that don’t always take the form of actively-prosecuted warfare are things seen in many parts of the world, and a setting-agnostic system that catered to the peninsula but could be easily repurposed elsewhere seemed like a very worthwhile project to spend time on.
So let’s get into how it works!
Involvement
Struggles are, first and foremost, local things. Local to large areas (Iberia, for instance, is a decently sized little peninsula), but still local. The most basic thing that defines them, then, is the struggle region - a predefined group of titles that the rules of the struggle apply within.
For FoI’s struggle, we’ve used the ol’ reliable world_europe_west_iberia region that’s been in the title since launch, but any region or combination of regions can be defined in the appropriate parameter. At the moment, these are static and only take regions, but we’re considering other options (e.g., titles, regions selected as part of the starting effect, etc.) for the future.
Cultures and faiths are regarded as either involved or not. This defines whether a specific culture or faith is seen as being a part of the “in-group” for the region, even when members of that in-group may occasionally (or frequently) be very hostile to each other. For the Iberian Struggle, for instance, a Castilian and an Andalusian both understand the changing nature of the peninsula instinctively in a way that an Anglo-Saxon would struggle to acclimate to.
Cultures become involved either on first starting a struggle, manually via script, or automatically when a certain percentage of their total counties are within the struggle region (the number is set per struggle, currently at 80% for the Iberian Struggle).
Hybrids and divergent cultures automatically become involved if they convert at least one county within the region on creation.
Neither cultures nor faiths lose their involvement automatically. Once they’re in, they’re in permanently, unless manually removed via script. For Fate of Iberia, this is necessary to keep the ruling class of al-Andalus, predominantly culturally insular families of Arabs or Berbers, involved, but it’s generally there to prevent wonky behaviour with struggles incorporating cultures and faiths from beyond their region who don’t actually have county within it.
A simpler example would be a hypothetical Anglo-Norman struggle for after the Conquest. We’d probably want to set Norman up as an involved culture, and wouldn’t want them to immediately become uninvolved because there are no Norman counties in the British Isles.
But Characters Tho?
Within the region, characters are defined by their personal involvement: the degree to which they’re considered part of the ongoing medley of social and cultural fluctuations that define an active struggle, and so how other characters (and counties) treat them. There are three levels to involvement:
Involved
Interloper
Uninvolved
Involved characters are those who are wholeheartedly engaged in the unique power dynamics of the struggle, and seen as insiders within the region. They may differ wildly from other involved characters, but involved characters are generally considered to appreciate the minutiae that make a struggle play differently from the rest of the world. Both their culture and faith must be flagged as being involved in the struggle, and either their capital is located within the struggle region or, if they’re unlanded, they’re physically there.
Interlopers are active within a struggle’s region but don’t quite grasp exactly how or why people from the region act the way they do. They generally don’t benefit from variant struggle rules as much as involved characters, but also aren’t as heavily restricted by them. Either their culture, their faith, or both are not flagged as being involved in the struggle, but their capital (or physical location if landless) is located within the region.
Uninvolved characters are outsiders and outlanders. Their concerns are remote to the struggle region, and even if they’re originally from that region, their isolation from it makes them lose touch with its subtleties and current events. Regardless of culture or faith, if their capital is located outside of the struggle region (or if they’re landless and physically not there), a character is considered uninvolved in that struggle. Uninvolved characters are generally expected to take penalties for holding counties within a struggle region, encouraging them to either delegate to vassals with a better level of involvement, or else getting more involved themselves.
Phases
Alright, so we know how a struggle covers an area, and how people are divided up into categories within that area. What do these categories and this area actually do?
For that, we need to look to phases.
Each phase reflects a sort of mood or temperament within a struggle region specific to that struggle, the outcome of many prior actions leading to a shifting tide of general opinion about what is and isn’t acceptable. Maybe some things that were taboo become mainstream for a time, and things otherwise considered acceptable are baulked at by even very conservative characters.
Though we’ll talk about how exactly you transition between phases a bit more in a moment, it’s worth noting that each phase has at least one (and usually more) future phase predefined for it, a phase that actions take in the course of play will gradually move the region’s “mood” towards.
Within the Iberian Struggle, phases are on a loosely even cycle: though there’s some lateral movement and backtracking possible, they mostly move evenly in a circle. This is purely a design choice, and more esoteric flows are entirely scriptable.
Manifesting the Mood
The actual effects of each phase can be split into three broad categories - parameters, character modifiers, and county modifiers. These are then further split by the involvement of different characters.
Parameters work similarly to doctrine parameters in faiths, or tradition parameters for cultures. They’re special rules, entirely defined within script (and so fully moddable) that can be referred to elsewhere in script to unlock unique content, provide special exemptions, or block off specific actions.
For example: in one phase, involved characters might be able to intermarry between faiths, in another, interlopers might receive cheaper holy wars whilst involved characters have them blocked entirely, and in both uninvolved characters may be blocked from culture converting involved cultures.
As with other breeds of parameter, struggle parameters are identified purely by their exact spelling and can thus be reused simply by duplicating them, either within a struggle or in other struggles, making them very versatile rules.
Character modifiers can be applied directly to involved or interloper characters. This generally chiefly affects involved characters, making some things easier and others harder, but we also use it to let interlopers occasionally have an easier time of bending or breaking local rules. Though these are our current guidelines, since these are all entirely scriptable, they can be changed according to the tonal needs of any given struggle.
Uninvolved characters do not have a character modifier slot - we don’t want characters in India getting negative modifiers for not being involved or interlopers in a struggle in Iberia!
Finally, we have county modifiers. These are applied to any county in the struggle region according to the direct holder of each county and their involvement; they generally have situational variables depending on phase for involved characters, mild to moderate debuffs for interlopers, and moderate to heavy debuffs for uninvolved characters.
Catalysts
Transitioning from a phase to any of its future phases requires the activation of catalysts: notable events, gameplay actions, and consequences to existing mechanics that drive the current phase towards a specific future phase.
Catalysts themselves can be anything. A war being declared, a type of character being seduced, a certain type of scheme failing, and so on. They’re set inside a phase’s future phase block, and, as with other elements of struggles, are entirely scriptable. Virtually any effect block in the entire title can be made into a catalyst with a bit of thought.
Whenever a catalyst is activated, meaning that the thing that sets them happens, the current phase gains points towards the future phase that that catalyst was tied to (for instance, a notable interfaith marriage might help an uncertainty-focused phase gain points towards a tolerance-focused phase). Catalysts themselves are repeatable and the points they give vary with the difficulty of the catalyst in question - two notable characters becoming soulmates might well be worth more points than a notable character being executed, for instance.
Points for put into simple tallies: when one tally for a future phase is met, that future phase becomes the new current phase, though there’s a grace period of a month before the actual switch.
On the off chance that all of the dozens or hundreds of characters involved in a struggle are being incomprehensibly boring, we should note the existence of one special catalyst: the passage of time. Every phase has a default future phase, and receives a single point per year towards that phase’s tally, representing the natural trend of public discourse towards particular conclusions. This can (and essentially always will) be overridden or exacerbated by more dramatic catalysts being activated, but even in very calm struggle, change is always coming.
Ending Decisions
A core part of the identity of struggles is that they’re not things that can be solved just by painting the map - after all, if they were, then the Iberian Struggle would’ve ended in its first decade when Musa ibn Nusayr had essentially subjugated the entire peninsula.
We wanted to provide more difficult and interesting goals for ending a struggle than just conquering the whole struggle region. After all, it really doesn’t matter if you’ve conquered everyone if that hasn’t dealt with the underlying societal causes besetting a struggle locale.
Ending decisions are our solution to this, being major, demanding decisions with consequences for the entire struggle region when taken and usually pretty intricate requirements.
In order for a struggle to be endable through the usual flow, at least one phase must have an ending decision defined, though they can be ended manually through script also. The Iberian Struggle has three ending decisions, each tied (both mechanically and thematically) to a different phase).
The Iberian Struggle
To finish up, let’s take a look at the new Iberian Struggle’s design (though I’ll put an obligatory reminder that this stuff isn’t final and that we generally continue to adjust things as we balance and playtest).
The Iberian Struggle’s phases are Opportunity, Hostility, Compromise, and Conciliation. Opportunity can lead to either Hostility or Conciliation, depending on how the peninsula’s leaders treat each other, whilst both Hostility and Conciliation respectively build or degrade towards Compromise, which in turn decays into Opportunity, starting the cycle again.
In Opportunity, Iberia is approaching a stage of uncertainty after notable spikes (hostile or friendly) in prior relations between faiths and cultures have abated. Struggle modifiers and parameters make war easier and cheaper, changing cultures and faiths easier and cheaper, but also unlock interfaith marriages and block off holy wars. Friendly interrelations between disparate characters activate catalysts guiding it towards Conciliation, whilst violent ones do the same for Hostility.
For Hostility, aggressive actors have brought tensions to a simmering fever pitch, and even the slightest differences may be cause for aggressive persecution. The phase’s effects make wars cheaper and more brutal for all involved, reduce economic and technological progress, and increase the capacity of many characters for hostile schemes. Violence can’t persist forever though, and either efforts at building bridges or simple exhaustion will eventually bring even the most violent Hostility phase towards Compromise.
Standing opposite Hostility is Conciliation, where pragmatic politicking builds bridges between even very disparate realms. Characters in this phase aren’t really tolerant by the modern meaning of the word, but many of the harsher biases of their time are temporarily dropped or ignored in the name of expediency. Wars become more expensive and truces longer, but there’s opportunity to unite against outsiders intervening in Iberian matters, and ruling over more multicultural and multifaith realms becomes easier and more beneficial.
Periods of interreliance like this don’t generally last. Granted privileges decay, ignored biases relapse, and power-hungry nobles tear down bridges for short-term gain. Even the most wholeheartedly supported Conciliation phase decays towards Compromise eventually.
Finally, Compromise. In this phase, Iberia has reached a point of equilibrium. Wars are less likely and most costly, but economic investment and other forms of passive stability are easier and better, whilst interfaith marriages flourish. The exhausted pragmatism of Compromise isn’t permanent, and will someday give rise to the cynical dynamism of Opportunity. The cycle begins anew.
Naturally we’ve peppered all of this with phase-specific events, decisions, interactions, the odd CB, and so on. Most phases also add variant unlocking criteria to existing pieces of content, adjusting the circumstances under which things like the Claim Throne scheme or Found Holy Order decision can be used - most commonly temporarily extending them to characters who’d usually not have access.
Say you don’t want to move on from a phase, though. Maybe you think Hostility’s the place for you, or you’d prefer a more permanent Conciliation, and want to break the endless cycle of social transmutation - well, unless you wanted permanent Opportunity, you’re in luck, because we’ve got ending decisions for Hostility, Compromise, and Conciliation.
Hostility’s ending decision is Dominance, reflecting the final ascension of one of Iberia’s warring states to a position of not just military dominance, but social and spiritual hegemony.
This gives your house an incredibly powerful modifier, making county and faith conversion within Iberia markedly faster, improving relations with those who share your faith or culture but markedly worsening them with other involved cultures or faiths, and making Holy Wars and Conquests cheaper and easier to access. It requires holding several important duchies, having a monocultural, monofaith primary kingdom, and being the only major player independent ruler in Iberia.
Conciliation’s ending decision is Détente, making temporary accommodations into more permanent ones.
Involved cultures gain a huge amount of cultural acceptance with each other, a house modifier that improves the opinion of different faiths and cultures, and several signature mechanics of the Conciliation phase become permanent for involved culture characters within Iberia: namely, interfaith marriage and disabled holy wars. Additionally, Iberian characters may join defensive wars for targets within Iberia against any aggressor from outside of Iberia.
It requires a certain level of fame, being allied to every other independent involved Iberian ruler, and completely controlling an Iberian kingdom without controlling more than a certain fraction of Iberian territory.
Compromise’s ending decision is Status Quo. Where Dominance is enforcing will and Détente finding accommodation, Status Quo is accepting that times have changed, that attempts to unite the peninsula are futile, and that its peoples and realms should go their separate ways and leave their neighbours be.
Status Quo balkanises Iberia, transferring duchies to connected kingdoms if appropriate and making every kingdom within Iberia its own de jure empire whilst permanently destroying Hispania. Ruling houses across the former struggle region gain a modifier for two centuries making them better at fighting in lands of their own cultural heritage, whilst the capital counties of all independent rulers become strongholds for the next century. Some CBs within Iberia become more expensive.
The requirements for Status Quo are a bit byzantine, essentially because it functions as the opt out decision if Dominance or Détente prove too difficult to work towards. If Iberia can’t be subjugated or coerced into cooperation then, in extremis, it can always be destroyed.
Future Use
The Iberian Struggle is our first go at a struggle system, and it’s one we’re fairly pleased with. That said, we’ve certainly taken note of how the feature seems to have caught the popular imagination over the last week or so, and we’re very interested to hear your thoughts now that there’s a bit more information available.
First up, though, let’s get a little disambiguation out of the way. The basic mechanic here, the struggle system, is free. It will be merged into the base game with 1.6 and available for use in mods (and potentially future DLCs) immediately.
The Iberian Struggle itself, however, is paid content attached to the Fate of Iberia DLC. Though anyone can add their own struggles without needing to depend on this flavour pack, this particular struggle and its content are part and parcel of the DLC.
With that out of the way, are there parts of the system you’d like to see refined and made more flexible? What are the struggles you’d like to see made in future? What’s your jankiest idea for hope for how to use the struggle system?
As ever, I’ll be around in the thread for the next hour or so to answer your queries.
Winter is slowly fading behind us (at least in the northern hemisphere), and spring is starting to take over. A new season calls for an announcement. I’m happy to present you with our next Flavor Pack: Fate of Iberia, due to be released on the 31st of May! We are obviously talking about Mediterranean Iberia, not the former Kingdom in Georgia.
In addition to being one of the most played regions, the Iberian peninsula is interesting because of the complexity of the geopolitical situation, and the richness of the events occurring during the time period of Crusader Kings 3. It gives us a good opportunity to bring more flavor for both the Christians and Muslims living there.
With this new flavor pack, we want to offer you the opportunity to truly decide the fate of the whole peninsula, either by reenacting history or creating an alternative that pleases you more. In order to model the complexity of the situation, we are introducing a new system, the Struggle. It will be changing the rules and increasing the challenge for the rulers within the Iberian peninsula. You can have an idea of how the game will be affected in the screenshot below. The effects will vary a lot depending on the stage of the struggle, but we will go into details in the next dev diary :)
The Struggle will both create new opportunities and add constraints for the rulers within Iberia
A new 867 bookmark features a revamped Iberian cast of characters, giving players the perfect place to jump in and deflect history as they see fit. The Struggle will persist into the 1066 start date as well. The bookmark lets you choose between different vassals, either from the Christian Kingdoms, or Al-Andalus. Each of them offers different starting challenges and choices.. For instance, in the south, Emir Adanis and Ibn Marwan are both Dukes under the Sultanate of Al-Andalus. But they also are neighbors and rivals. Starting with one of them will certainly imply crossing swords and scheming against the other.
The new 867 bookmark will be available for everyone, while being more interesting to experience if you own Fate of Iberia
We also seized the opportunity to update the map, refining the county and duchy divisions, as well as the cultures and faiths. This means the stage is more accurately set for the start of our game.
Screenshot of the new county division in Iberia
We mostly focused on the Northern part of the region.
The new culture set up for the year 867
The new faith set up for the year 867
You might have noticed the addition of the Mozarabic faith, but again, we will detail that in a future dev diary, along with the rest of the content you can expect from a Flavor Pack!
We are excited to go into the details and share all of this with you in the coming weeks! Until then, I wish you a lovely day and enjoy the trailer!
Cheers,
P.S.: While we do not expect the save versions to be incompatible, please make sure you wrap up your previous playthrough to ensure a seamless transition. If you encounter issues, you can of course roll these saves back to a previous version UNLESS you are playing in Ironman.
💡 This week, please visit our forums to see the images & memes prepared for you ːcrusader_helmetː
Whenever you launch the game, get yourself a your favorite gamer juice and steel your resolve for a few good hours of managing a medieval kingdom, there is a lot of stuff that happened behind the scenes to make it a memorable experience, free from issues. For a game as complex as Crusader Kings 3, this is even more important, and as the features get added to the game, it becomes more and more complicated, like a careful balancing act between economy, AI, warfare, interactions - all to ensure the experience you receive in the newest update is something worth waiting for!
We are but a few humble people, whose job is to find out what works and what doesn’t and report any and all issues to the team before the game hits your platform of choice. But what happens when sometimes issues do remain hidden away and they will take spitting behind your shoulder 3 times on a 3rd fortnight of a 5th month on a leap year, during a full moon while dancing hokey-pokey to uncover?
This is where you can come in and help! We can get rid of serious, big issues, find them ahead of time before you even realize they existed in the first place, and try and deliver a polished product. For anything else - well, it’s the economy of scale. With the variety of systems, languages, experiences, playstyles - YOU are the biggest help of all, in how a game can be shaped. And for that we have a special platform, called Bug Report Forum, where you can air out your grievances, provide feedback, reproduction steps and situations that irk you on the constant, so that our QA team can go through them much more efficiently and supply the team with a steady stream of new bugs to iron out for the next bug fix patch or release.
[Comic on logging]
Once you take your valuable time to report the issue that ruins your mojo when playing Crusader Kings, it lands on our Forum as a thread. We then take turns, employing QA power to go through the forums and reproduce them locally on our machines to ensure if the issue is serious, or perhaps we can offer support by providing advice on how to avoid it.
Once the ticket is verified internally, using your reproduction steps, your description, screenshots, crash logs and saves, we then take the time to translate it into a language that our internal team can understand - Jira.
There’s an art to this. Jira is an extremely helpful and smart tool to use, and QA by nature becomes naturally adept at using it skillfully. It’s usually the QA who does project-wide database evaluations, scrubbing it from obsolete tickets and updating any and all lingering ones to make sure the project team can focus on what’s important - making more fun stuff!
Wait… Obsolete? You mean you just CLOSE old tickets?
We do… sometimes. For example, if we had an issue lingering around in some hidden away system for a long time (and sometimes not even you, our community, are able to find it for years on end) - the issue becomes obsolete - either we just make the bug into a feature, or because we change a system entirely - it becomes changed so it’s not even a problem anymore. Happens on occasion, and even we are quite surprised that some bugs that linger for long never get picked up by the players, but hey - bugs are features too! Right?
Riiiiiiiiiight…?
[Excerpt from “How to JIRA” guide]
Now that might look like a lot, but trust me - there’s a way to learn this. First of all, it’s pretty straight forward; complex, but not complicated. We have been campaigning for the team to use Jira tickets efficiently. For example, if we get a ticket that says “Fix the thing we talked about yesterday” and there is nothing else in it, how can we remember what we have done, what needs to be done and how do we go back to it to retest? And again - fast-forward time to a month later and believe me - nobody will remember what in the world such a ticket meant.
As a result, making sure all the fields are appropriately filled out is paramount to an efficient use of the database, and to make our team’s lives just a little bit easier when having to deal with a big pile of bugs that come from you or from our internal reporting.
If everything is sorted, and everyone is on the same page, it makes it a lot easier for the producers to schedule when and how to report. And the upvoting on the forum? That’s an incredibly powerful tool to let us know which tickets need to be prioritized and fixed, no matter what. That’s how we can influence what is important to be fixed first.
[QA chasing the Programmers]
The (un)lucky Programmer/Designer Once the bug has been verified, put into Jira, assigned a version and prioritized, a Developer can pick the bug up for fixing. This is typically either a Designer or a Programmer, depending on where the bug originates. In some cases the bug is reassigned to another role if the bug is found to be caused in another part of the game. Now that we know what the issue is and how it’s experienced, we need to investigate the how and why it happens.
As an example of this, let us look at the recently fixed issue where the Holy Orders would raise themselves and immediately disband if they were called into a war. This issue was a side effect of letting Holy Orders raise themselves for Great Holy Wars: whenever a Holy Order is at war as an ally (which they qualify as during the Great Holy Wars), they would raise their armies.
We start by looking at why the Order is disbanding the armies. If they’re raised, they must have something to fight against, right?
Through developer magic known as debug mode and source code, we can step through each individual function call to see what’s going on. Stepping through this function leads us to finding that the war they are fighting in is not relevant to them, causing them to disband. Looking at the enemies in the war they’re in, none of them are of a hostile Faith. We also see that they are hired by the Grandmaster of the Order, so the Order itself decided to raise their armies, not another character hiring them.
Holy Orders will not fight in wars where the opposing side does not have any participants of hostile Faith. Because we found the Holy Order disbanding due to being raised against an irrelevant enemy, we must look at the logic which controls how they are raised.
I will spare you the initial dig down the AI code, but the short of it is: if a Holy Order can be raised, raise it. So we need to see why the Holy Order can be raised when it clearly should not be able to. We arrive at the following function.
This logic checks if the Order can be hired by a character. This goes for any character looking to use the Order in question, even the Grandmaster of the Order. The Grandmaster of the Order is part of the war, so let us see where it leads us. Starting from the top, we check if the character can use the Order. Let us take a look at how that goes.
This is the code that checks if a character can use a Holy Order. When the Holy Order joins a war on its own, pCharacter is the Grandmaster, which is the Owner of the Holy Order. Makes perfect sense that the Grandmaster can make use of his own Holy Order. But, make notice further down: there is a check there, verifying if the character is in a relevant war. This is the same function that caused the army to disband earlier.
Returning back to the function which checks if a Holy Order can be hired by our Grandmaster.
To simplify things, I have collapsed all the irrelevant parts; contained within each “if” section is something which will cause the function to fail, and not allow the Grandmaster to hire their own Order. Let’s go through these relevant parts. We don’t run afoul with the hire limit, as we don’t hire any other Holy Orders as the Grandmaster of one. We are not already hired by someone else, so we skip that part. We own this order, so we don’t touch the third “if” statement. Finally, we can afford to hire our own Order. Look at that, this means we can hire the Holy Order!
But returning back to the finding that the Holy Order would immediately disband because we’re not in a relevant war. This is where we find our solution: if we own our own Holy Order, we can always use it, but because of this we will not look if the war we are in is relevant at all. So we have a very simple solution to the problem.
[Solution to preventing the Holy Order from being raised]
We know that the check for relevant wars is only skipped if we are the Grandmaster of the Order, we don’t need to check the faith of our own Grandmaster, so this is what we’re left with: if the one who wants to hire the Holy Order is the Owner of the Order, check if they are in a relevant war or not.
The merge request process - everyone judges you
When the fix has been created, it is put into what is called the merge request; this is the step before the fix is put into the upcoming build. Before it gets merged, there are a bunch of steps. It starts with one or more members of the team of appropriate discipline reviewing the changes being applied. This is the first step to spotting any unintended side effects that may occur with any given fix. The scrutiny of these reviews increase drastically with several more steps if the fix will go into an upcoming release.
[Merge request overview for Preventing Holy Orders from raising themselves in irrelevant wars]
Merge requests have a template that must be filled in when filed. This process gives both the fixer and reviewer the chance to review the implications of a fix and whether or not to actually commit it to a particular version. We make a serious consideration on how risky a fix is, can the fix have unintended knockon effects and the like, and how it impacts the overall performance of the game, does the fix contain a lot of computationally heavy code or script that will degrade performance.
The golden rules of managing a merge request are:
Reviewer is right until proven wrong.
Discipline leads are always right.
Adding a fix to a build generally requires approval from the discipline lead, tech lead and another reviewer, and only the tech lead can actually merge the fix into the build when we’re getting close to release.
[The commit fixing the issue]
The reviewer(s) give feedback on the merge request, and these must be addressed in one way or another. In the overview, you can see that the fix ended up being five commits in total, where just one of them was the fix itself. The rest were either addressing comments made in the review process or issues raised by the automated build and testing system, which we call pipelines. Speaking of pipelines.
[Pipeline for merge request]
Pipelines verify the integrity and quality of the code, build the game and test the game while the review process is going. All of these must pass for the merge request to be allowed to merge, unless explicit permission is given from the programmers, and in the case of an upcoming release the pipelines must be green. No exceptions.
Once the fix has been merged, we hand it back over to the sadistic wonderful QA team.
[Happy tears from QA after a 2 year old issue was resolved]
Once a ticket gets processed, churned through the complicated development machine, the issue is removed from the game, the correct code, script or asset gets merged into the game, the ticket is then marked as resolved.
This is when we get our hands on it one more time to verify if the fix has not only resolved the issue listed therein, but also that it has no other knock-on effects. Think of big fixes like a domino - you push one piece and the others will fall. Sometimes a different set of dominos, that we set up a long time ago, gets randomly pushed and some older issues reappear out of nowhere. It happens when you deal with a complex codebase, in which case you sometimes do see returning fan favorites.
But all we have to do is revisit the older system, fix it (again), and away we go! Unless yet another bug is retriggered, in which case… Well, we have to revisit yet another system. Videogames are hard, m’kay?
This is why we sometimes need to go through the same ticket again, and again, and again, until we are very sure it fixes more things than it breaks. Sometimes bugs linger in our database for a long time. Trust us - we know that issues you mentioned on release still persist and we want to fix everything, but with every release we get a new batch of tickets we have to go through…
So.
Many.
Times.
However, once the fix is confirmed, and the build is locked in - we are ready to press the large green button and release it for your scrutiny and repeat aforementioned hokey-pokey jig again!
The Update - Are we done yet?
Not really. On our end we close the bug as resolved, but there is one last thing that comes into play on resolving a bug. This is all of you, the community. The QA team catches most of the problems before a release is made, but sometimes for an issue to reoccur, you need the stars to align on a laptop manufactured on 29th of February 2020 while the player is doing the Macarena.
Paraphrasing, of course, but there are cases where an issue can reemerge later. This can happen due to a myriad of factors that are hard to account for. Some issues can be related to hardware and specific circumstances we don’t have the capacity to test for. This is when we rely on you all to be vigilant and report issues back to us. The more detailed and specified, the better. Once this is done we go back from the top of this expose and do the dance one more time.
If no one in the community experiences the issue again, then it stays resolved.
I hope you all have enjoyed this little expose into the life of a game developer! Thank you for your time, and we wish you a very pleasant day.
Until next time!
📢 Special Livestream: The Bright Ages 🗓️ Friday, April 1 || 4pm - 7pm CEST We will discuss our passion for history with Alexander Oltner, CK3 Game Director, and our special guests Matthew Gabriele & David Perry, co-authors of The Bright Ages: A New History of Medieval Europe! 🏰
The legendary TPAIN is back in Crusader Kings III and you won't want to miss it! To celebrate the release of CK3 on console, we're releasing 5 new videos over the next week! ✨
Have you been looking high and low for a remarkable Royal Artifact to place in your gaming court? Our finest artisans have just completed a masterpiece that may interest you — we present the regal Crusader Kings III controller from XBox! 👑
While the PC version of Crusader Kings III does not currently support controllers, you can still show off your sovereign style when playing other games with a controller made for royalty. 🎮
We are glad to announce that we have a fantastic Dev Diary from our friends at Lab42 where we will cover the long anticipated and much sought after UI and UX for the Console version releasing soon!
Lab42 have been hard at work and there is not much time left until release, so we hope you enjoy the information and vision they have presented for you. Now with screenshots!
As you would expect, user interface and controls were core components of the adaptation from PC to console. One of the main aims was to create a UI that was easily accessible and facilitated fluid gameplay. There is no set standard for UI and controls for Grand Strategy Games on console, with most approaches being subjective and as a consequence we’ve taken an approach that suited the unique Crusader Kings Gameplay.
[Map Overview and controls]
This started with a control hierarchy that marries UI and button control placement, for example ... using shoulder buttons for the top tier menus – the Command Bar – and bumpers to tab between sub-menus within the main menus. In addition, the decision was taken to assign controls to unique game functions rather than using lots of contextual buttons. Control prompts specific to each menu, screen / game context are displayed at the bottom of the screen to assist the user. The aim is to provide the player with a lexicon of controls that when learnt facilitate fluid interaction with the game UI and functionality.
[Earl Alfred Character View]
We could've taken a very conservative approach to development, but this was not what Lab42 or Paradox wanted. For example, the conundrum of turning a PC control system and UI into a viable console offering could've involved retaining the PC UI and using the controller thumbstick as a virtual mouse, but this approach was dismissed out of hand. User research also showed how popular the D-Pad was as a means of game navigation, especially when dealing with menus. Moving away from the use of a virtual mouse and freeing up the D-Pad for game navigation (as opposed to invoking menus as used in other console strategy games) presented a new set of challenges to overcome.
[Family Tree]
The UI and controls we've adopted is a hybrid approach, leaning on best in class examples as reference and applying them to the unique CK game framework (e.g. top level onscreen menus (the Command Bar), Radials (Character and Maps), and quality of life shortcuts (e.g. Quick Access Bar, Hints, Notifications).
[Council Tab in Top Menu]
When looking at the Crusader Kings user interface it was clear that most of the community want as much information at their fingertips as possible in order to form and execute game strategy. Flicking between menus, the map and popups is a feature of the PC title that we wanted to retain on console. This is also enhanced by the Radials to access your Character Wheel and another that introduces the Map View Radial accessible at any time from the main gameplay window. Allowing you to quickly change between Map Modes and easily accessing your character features without in-depth menu navigation.
[Radial Map Wheel]
Avoiding the use of lots of fullscreen menus that potentially break the immersion of gameplay was a driver here, and this led to the concept of switching focus being introduced. This essentially allows the gamer to quickly move between any open screen elements as well as allowing easy Map Interaction – a critical component of Crusader Kings gameplay.
[Start Date map]
[Martial View]
[Martial View]
That does it for the Console portion of the Developer Diary fresh and hot from the Lab42 presses!
Crusader Kings III, Update 1.5.1.1: Now available! We have been working to enhance our Update 1.5.1 thanks to your feedback & bug reports. Thank you for supporting CK3, we can't wait to show you what we have in store next!
Here’s the changelog 1.5.1.1:
################### # Game Balance ################### - Vassals can no longer join factions if they have a Truce with their liege
################### # Localization ################### - Fixed missing text and tooltips for Cultural Traditions and Cultural Aesthetics in Spanish - Fixed county title macros in Korean - Fixed missing translations for the south asian event pool - Fixed inspired person text not being translated in Korean
################### # User Modding ################### - Fixed a crash in the map editor - Tree mask assets should now be visible again in the map editor
################### # Bugfixes ################### - Fix law tooltips in tooltips not showing up correctly - Fixed an issue that caused the Coat of Arms designer to repeat the same patterns if players were scrolling up and down the list - Fixed an issue that caused the game to sometimes incorrectly display your custom Coat of Arms for other dynasties - Fixed a rare crash that occurred when the AI was forming a new hybrid culture - Fix text offset for icons in law tooltip - Fixed Aslaug, daughter of Ivar the Boneless, being married instead of betrothed at age 1 - Fixed CTD happening on loading a save after rejecting a culture conversion request. - Holy Orders can no longer raise themselves in wars without a hostile faith participant, even if they are somehow allied in the war - Renaming event description now targets other characters properly - Fixed Ivars sons being older than himself in the bookmark screen - Fixed missing key for culture conversion interaction - Added correct naming of new eye socket types in the Customize Appearance menu - Fixed the Train Commanders task not consistently improving Knights/Commanders and also not boosting the strength of new Men-at-Arms types - Map pin portrait no longer freezes animation of all the other portraits of the same character - Relaxed Turkish Eagle achievement culture criteria to not require branching directly from Turkish or Greek anymore. It is enough if these two cultures exist somewhere in the parentage of your new culture - Trade ports should now be clearer on why they cannot be built when you lack the right cultural tradition or innovation - Turkish Eagle achievement should now fire again for new saves - Adjusted triggers and localisation for 'Establish the Theravada Faith' decision and event chain - Fixed some unnatural looking shadows in certain court room setups
One and a half years later, you have told over 2 Million stories! 👑 Every story is unique and every story has led us to where we are now. What is your story and how will you tell it in CK3?
In the latest news for CK3:
◘ Console
The release date for PlayStation 5 & Xbox One X|S is set for March 29!
We are sharing some details in our Dev Diaries on our forums. The next information will share more screenshots, previews, videos and even Livestreams as we get closer to the release date.
Crusader Kings III on consoles is being ported by Lab42. Paradox Interactive develops the game on PC.
Crusader Kings III, Update 1.5.1: Now available! 🔰 Better Coat of Arms designer 🏰 Tribal Court 🪔 Improved Cultures 🤖 Enhanced AI 📜 New Events 👑 And more Balance, Performance, Art, Content, Database, and Bugfixes brought to #CK3!
################### # Balance ################### - AI's will now leave factions more quickly when they are pleased with you as their liege - AI's will no longer press factions for Claimants they like if they also like their current liege a lot, with a decreasing chance at higher opinions (the AI will be less likely to press a claimant they have 80 opinion of if they have 60 opinion of their liege, for example) - The AI now considers Faith Hostility when selecting claimants - AI vassals are now more likely to offer a gift when paying homage - Added a Game Rule (Empire Obscurity) that makes empires that control below 20% of their De Jure counties be destroyed. This should solve empires sticking around forever as micro-realms. - Boosted the control gain from requesting Bailiffs from your Liege in a Petition - Corrected the modifiers of the Cup of Jamshid - Forcing same vote by using a hook on an elector will now last 100 years instead of 5 - It's now much harder to invite Inspired people to your court, and practically impossible to invite anyone who's currently being sponsored - Landless AI's will now try to equip artifacts you gift them via the interaction (depending on rarity) - Only House Heads will now demand the return of artifacts if there's only a house claim - Strategy Lifestyle bonus to Skirmishers has been moved to the Hit and Run Perk - The AI now has a 5 year cooldown towards asking to educate the players children if the player refuses - The AI will no longer demand artifacts from players they like a lot, and will no longer keep asking after you've refused once - The Chaste trait now only reduces Seduction scheme power - The Development progress from the Industrious Cultural Tradition is now applied at most once a year - The Holy Site of Qayaliq now gives Archer Cavalry bonuses - The Jousting Lists and Archery Ranges Duchy Buildings now give bonuses to camel, elephant, and archer cavalry - The Parthian Tactics perk now boosts Elephant and Camel cavalry - The Prestige gained from the Architect trait when it's boosted via cultural traditions have been changed from 50% to a flat +0.5/month - The War Camps and Hunting Grounds buildings now give Horse Archer bonuses - Tweaked various factors in the war for England, in order to reduce the chances of Harold winning - AI now moves capital to London on victory in Norman conquest, if possible - Northern Lords legacies can now be gotten by dynasts of any culture descendent from Norse as well as Norse culture itself. - Sacred Childbirth now grants piety each time a child is born and considers Pregnant a virtuous trait - Rebalanced artifact gift opinion gain - Tribal Kings and Emperors can now access the Royal Court, but it plays differently: - The 'Expected Grandeur' is always the same as their current Grandeur level. It cannot be above or below. - All Amenity Levels except the first two are blocked if playing Tribal - Amenity Costs are greatly increased if tribal (it was trivially cheap) - They only have access to one Court Type: Tribal. This one can be kept if feudalizing, but it doesn't give many benefits, and the AI will switch out of it fairly quickly. - All Tutorials and Game Concepts now mention Tribals and the differences they have - Several events that were ill-fitting for tribals will not appear for them (i.e. founding new City holdings)
################### # AI ################### - A unit stack wanting to resupply will spread out its subunit stacks into neighboring provinces even though said provinces might not allow resupplying, in order to try and avoid attrition. - AI should take player units into account for supply situation when selecting target province. - AI stops to raise levies with very small amount of troops - Allow units to ignore hostile attrition as a last resort when moving to a target in a neighboring county. - Added missing check for if a unit is moving or not when calculating troop strength for supply. - For combat evaluation, only count available subunit stacks if they are close enough. - If the main subunit stack is already moving, then don't deny being available for order because some units are still technically sieging. - Desperate AI will be more bold when selecting targets near enemy units, or when engaging enemy units. - Ignore non-castle provinces when giving extra score to province targets near the war goal area. - In Great Holy Wars the AI will be more focused on fighting about the war goal and less likely to shy away from confrontation due to numerical weakness. - Instructed the AI to adjust its court amenity spending in a more responsive manner - AI will no longer go to war for artifacts that are below masterwork, cursed or that it cannot use (like toys). - Lowered the AI cooldown on Pay Homage to 2 years from 3 - Blocked the AI from overspending in Hold Court events - Fixed an issue where AI's could get stuck and never go home after a raid
################### # Performance ################### - Significantly improved the performance of all portraits in the game - Improved the performance of the Throne Room scenes
################### # Interface ################### - Add check boxes for flipping coat of arm emblems in detail edit mode - Budget tooltip entry on liege taxes are now shown as a breakdown instead of being within the budget tooltip - Fixed too low left margin for crown authority buttons - Recruited prisoners can now be forced to Take the Vows when Negotiating Release - When gifting an Artifact, the entry will now show if it is equipped - Added a prestige icon to council task descs - Empty court positions you cannot hire are now correctly sorted to the bottom of the list - Dead characters now have a skull next to their age - Renamed the Court tab to Courtiers to differentiate between it and Royal Court - Made text labels have more correct margins. - Cleaned up margins and spacings in the Faith View. - Changed the standard window margins so they no longer overlap the vertical lines at the sides of the window.
################### # Art ################### - Significantly improved the lighting and shadows in all throne rooms - Fixed CoA on shield artifacts being mirrored when displayed in the Royal Court - Added unique icons for all different types of inspirations - Added a new set of Legwear for Arabic clothes sets - Added unique art for the Throne of Solomon - Olifant now has a unique 3D appearance - African and Norse swords now have unique 3D appearance - Steppe Axes now have a unique 3D appearance - African Axes now have a unique 3D appearance - Steppe Maces now have a unique 3D appearance - Mediterranean Maces and Axes now have a unique 3D appearance - Added several new 2D icons to artifacts - Changed which texture quality settings are used on each preset level in the graphics settings menu so that the highest preset default to using the highest quality textures - Made it so that orthodox priests should always have a beard - Adjusted eyelids that were sometimes causing characters to have overly “squinty” eyes - Added a hybrid culture art pattern for options that can mix from two different cultures - Added unique CoA for HRE that reformed Roman Empire
################### # Localization ################### - Fixed error string in spanish inspiration sponsored toast - Fixed duplicate chinese character issue in court grandeur rank text - Fixed the alliance popup string in spanish to use correct custom loc - Fixed Spanish warning message for player marriage and betrothal status - Fixed broken string in spanish for inspiration - Fixed spanish localisation for intrigue window - Fixed 2nd and 3rd tier of beauty traits sharing Hermoso localization in Spanish, 2nd tier is now Atractivo
################### # Game Content ################### - Added an additional event for losing language when reached cap for max known - Added notification, personal artifact claim, and prestige loss after losing a war banner in battle - Added three additional hunt events - Added three additional Feast events about artifacts - Added a new yearly event about medieval football - Added a new martial lifestyle event about improvised weapons - Added a new Skulduggery lifestyle event about siege tactics - Added a new Intimidation lifestyle event about a forest of corpses - Added the establish Yamagate of Samarkand decision - Added a new set of events surrounding the Athletic trait - Added a new event for characters with the Lisp trait - Added an event where you can combine a relic artifact with a weapon artifact - Added the 'Passion Play' theology lifestyle event - Added a new murder save event about artifacts - Added two hostile scheme ongoing events about knowing languages - Added the Establish Theravada Faith Event Chain to the Burmese region - Added the Olifant artifact as a new artifact that can be found by adventurers
################### # User Modding ################### - Added can_pick trigger to Court Amenities - Added equip_artifact_to_owner effect - Added equip_artifact_to_owner_replace effect - Added unequip_artifact_from_owner effect - Court scene editor will now save only current active scene and not overwrite all the other variants - Allow setting any angle for pitch in court scene settings - Add light type controls to court scene editor - Add indications for lights that are enabled and with shadows - Add shadow fade per light source - Add shadow settings as sliders to scene editor - Allow shadow depth fade factor to be influenced by a define - Allow lights be affected by all shadows according to a define - Fix the has_icon trigger not correctly detecting a faith's icon - Fix the past_holder list builder being incorrectly registered as any_any_ - Added a debug interaction for taking an artifact
################### # Databases ################### - Added Karelian culture in counties between Finnish and Bjarmian - Added more straits connecting Zeeland to surrounding counties - Adding missing accents to French titles - Fixed death date of Konrad Wettin - Fixed gaps in history of Sunni caliphs - Improved historical setup of Sankt Gallen - Yughur is a now divergence of the Uyghur culture - Öngüd is a now divergence of the Shatuo culture - Added Ayneha language for Sorko, Gaw, & Songhai to model one of their major gulfs from the other major cultural blocks of the western Sahel - Added in Rasad, the mother of the Fatimid Caliph in 1066. - Cleaned up loose characters in the Chola dynasty tree. - Reverted Uxkull to being on the Latvian side of the river - Made Ostmark/Brandenburg, Meissen, and Lausitz default names Polabian, changing to German - Lubeck and Mecklenburg now use Slavic names as default and change to German - Remove anachronistic names in Russia/Central Asia - Kanuri now speak Tubu (Saharan) rather than Chadic language - Muslim Volga Bolghars are now Clan instead of Feudal in 1066 - Fixed typo in name of Otranto - Fixed two counties sharing name Naissos, and added Niš as a Slavic name for the real one - Fixed inconsistent transliteration of Rashka, and name of its capital barony - Replaced erroneous Wallachian Bolghar rulers in 867 with Vlachs - Fixed misplaced Irish strait graphics between Carrickfergus and Wigtown - Fixed historical ruler of Hörðaland, now is correct Eirikr - Fatimah is now guaranteed pious traits - Renamed Wilhelmshaven to more historical Jever - Changed Bulgarian Warrior Culture tradition to Stand and Fight - Added Croatian to history of Bulgarian and made Vlach formation later - Capital of Bulgaria is now Preslav in 867 - Extended Avar settlement of Balaton in 867 - Early bookmark Polish duchies now have tribal names - Nupe culture now speak East Kwa language - Fixed names of Petropavl and Petropavolsk - Changed the english name of Kiev to Kyiv - Renamed Courland to Curonia - Nizhny Novgorod is now called Obran Osh unless Russian, rather than only if Finnic - Fixed leftover Russian Slovianskan chief in 1066 - Fixed Finnic Russian overlaps in 1066 - Updated culture around Provence/Savoy borders to reflect Occitan and Frankish dialect spreads - Fixed Pecheneg feudal rulers at start - Tied Syriac culture to Nestorian faith in both bookmarks - Fixes for missing Mayzadids, Syrian borders in 1066, incorrect duke of Cappadocia in 1066, and more - Fixed titles used by Arpitan hybrid culture from Anjou to Provence - Fixed some Siguic counties which should have been Bidaic - Fixed some Mashriqi counties which should have been Bedouin - Improved historical cultural setup of Estonia/Latvia - Charleroi renamed to Dinant - Adjusted Empire borders in the area formerly covered by the South Baltic Empire - Improved historical setup of Langres, moved county to Duchy of Burgundy - Added more name equivalencies, mostly Sicilian - Added missing accents to French titles - Improved historical/cultural setup of Sicily in 1066 - Sicilian culture now hybridizes in 950, to prevent it stating in 1066 that it hybridized in 700 when it doesn't exist in 867 - Orissa is now a Kingdom at start in 1066 - Added the Baudh Bhanjas in Kinjali Mandali in 1066 - Fixed the Somavamsi family tree, and another branch of the Somavamsi dynasty now holds the western part of the kingdom in 1066. - Added the Chikitiki Gangas in Swetaka Mandala in 1066. - Qocho's vassals should now be Feudal instead of Clan - Updated the Unite the West Slavs decision to give you the West-Slavia title - Zurvanism is now a doctrine for Zoroastrians rather than a distinct faith - Added Behafaridism as a Zoroastrian faith - Changed Polabia to be named Sorbia by default - Fixed some historical Georgian Bagrationi characters remaining Armenian - Remodeled Ari faith, added historical figures in Burma, adjusted pre-existing ones - Switched Ari's color to 'roasted plum' - Cathars no longer believe in ritual suicide and now believe in reincarnation - Renamed Consolementum to Endura - Ivar the Boneless is now the youngest son of Ragnarr rather than the oldest - Gave Neftegorsk a more appropriate name - Moved Hereward and Turdifa to Count Baldwin of Flanders' court. Adjusted Hereward's traits and gave him a pressed claim on Cambridgeshire. Added "the Wake" nickname. - Removed Anglo-Saxon id 90029 = 'Edith' was the name of Hereward's mother, not his wife. Added Dutch id (pending) = 'Turfida' was his actual wife, raised in Saint-Omer. - Added a dynasty for Hereward the Wake
################### # Bugfixes ################### - Fixed a lot of various issues with Hold Court events which were caused by subsequent events sometimes 'stealing' characters from those ahead in the queue - Fixed some cases when a royal court owner dies but events are still in progress, avoiding soft-locks when visiting "dead" royal courts - Council task events should now fire again as intended - Fixed Prince Electors needing to hold titles as their primary to vote - Fixed Gradient Borders not updating when they should - Fixed cultural divergence bonuses not updating until you reload the game - Children will no longer vie for their lieges attention in Getting Ahead event - Defender value in sieges should no longer become insanely high due to changing underlying factors, and sieges should no longer lose progress when the total value falls under current progress. - Don't open the decision view behind the court scene when you try to hold court, just open the one decision detail view we need and close just that. - Electors will no longer rate themselves based on rank under Saxon Elective - Estonians should now have access to Varangian Adventures for owners of Northern Lords - Fix add_achievement_variable_effect not incrementing variables properly causing the "Seductive" achievement to never fire. - Fix becoming malnourished sending the toast you became obese instead. - Fix pending interactions not expiring after the timer runs out. - Fix the culture head learning sometimes being out of date in the culture window UI. - Fix the hold court decision window being empty if you use a two step decision, like commission artifact, and then open the royal court view. - Fix the no cooldown option in hybridizing cultures not correctly applying. - Fixed Blackmail interaction being unavailable forever if someone you were blackmailing died before they replied - Fixed Go Outside! event firing for celibate characters - Fixed Ruler Designed characters receiving banners of historical dynasties they replaced - Fixed Slovianskan adventurers being more likely to find Roog artifacts - Fixed Sultanate of Rum decision disappearing if capital was in Syria - Restore the Papacy in Rome should now be less hidden - Fixed all Anglo-Saxon counties forcibly converting to Scots if their ruler owned any counties in Scotland - Fixed being able to choose medical treatment for other character's prisoners - Fixed being able to use Revoke Title on characters you have a truce with, and thereby avoid truce by forcing war - Fixed broken name in artifacts made from deceased pets - Fixed characters living in foreign realms being invited to feasts, and having such a good time they never go back - Fixed creating a new cadet branch not granting claims on dynasty banner - Fixed duplicate Gauthier de Brienne and dynasty - Fixed mismatched triggers in Civic Rivalry event - Fixed end of partition of Danelaw and England giving Scandinavian Elective and Danelaw CoA to non-Scandinavians - Fixed house banner appearing twice in new court event if not a dynasty head - Fixed ill characters wearing helmets and coifs with their nighties - Fixed issues caused by being able to Petition Liege or Pay Homage while your own court events were awaiting input - Fixed lieges who refuse petitions losing opinion of themselves - Fixed misleading dynasty trigger in Archduchy of Austria decision - Fixed missing loc, empty councils blocking decision, and other minor issues with Petition Liege - Fixed not being able gift Dynasty Banners to their Dynasty Head - Fixed rewards and text in The King of Livonia event - Fixed some Electors being excluded as Candidates due to low rank under Feudal Elective succession - Fixed some anachronistic title names in Slovenia - Fixed toast from Urban Development stating a Temple is being built instead of a City - Fixed issues with scopes in Hero of the Frontier event - Improved display of Found Witch Coven decision requirements - Fixed clerical gender in Unconventional Preacher event - Holy Orders can now raise themselves when at war or pledged to a Great Holy War - Information Brokering event no longer includes known secrets of your own children's parentage - Missing text in the automatic law change notification should be corrected - Unified Songhai color - The follow up event of the Cadastre is not hiding in the court view anymore - Angelicas Ring will no longer be stored on the floor if found and brought to court by an adventurer - Improved tooltip for elective score required to change a character's vote - Fixed electors voting themselves based on education - Fixed Estonian characters using non-Estonian names in bookmarks - Fixed perspective of Introduce New Fashion cooldown trigger - Achievement Delusions of Grandeur requirements now work properly - Adjusted the achievement ‘The True Royal Court’ to have more intuitive triggers - Adjusted effect of performance-enhancing drugs - Children should now always lose their childhood traits/guardians upon reaching 16 years of age - Claim wars started via Hold Court events no longer cost prestige to declare - Corrected incorrectly saved scopes in Cupbearer/Bodyguard/Food Taster murder save events - Count only available innovations for progress towards the next era - Executing prisoners should no longer sometimes apply stress twice for the same trait. - Fix enable/disable light source checkbox in court scene editor - Fixed an instance of missing loc in a seduction event if the target was a wanderer - Fixed an issue with Claimant factions constantly forming/disbanding under certain circumstances - Fixed an issue with the 'The Northerner Menace' event where it could fire for invalid wars - Fixed button sometimes missing the name of an executioner in Public Accusation event - Fixed incorrect reference to the Bedchamber event picture - Fixed issue that would sometimes cause a bad tooltip for executing prisoners when execution happened due to an event choice - The game now tells you that vassals cannot become executioners - Fixed several hybrid names incorrectly looking for Saxon culture rather than Anglo-Saxon - Fixed the Beta Israel achievement being available to ruler designed characters - Fixed the referenced character sometimes being wrong in the text for the outcome events of the rival duel event chain - Hide ghost widgets visible for few frames when game map just appears on screen - If a scheme is exposed, your spymaster won't reveal themselves as the plotter anymore - Lowborn characters with a lowborn liege will no longer pretend like they're nobles for purposes of 'marrying down' - Republican Legacy is now properly categorized as a Regional Tradition - Restore missing shortcuts in the tooltips for side panel buttons in HUD - Revoking a lease should now only give stress once - The 'Land of the Bow' Tradition is now properly available to cultures with the East African Heritage - The Hybrid Culture notification will now only show up if you're in diplomatic range of the founder - The Inventory button is now hidden for dead characters - The standard seduction outcome event now uses the bedchamber background - The traditions Mountaineer Ruralism and Mountain Homes are now properly mutually exclusive - Vassals will no longer show up in court and complain about having imprisoned their own relatives - Visigothic Culture now starts with Visgothic Codes - You can no longer game over if your designated heir becomes a monk, eunuch or otherwise invalid for inheritance - You can now click the button to adopt a Court Language in the Culture View - You can now only rename children that are your close family, no more renaming any child in the world! - FP1 traditions should no longer show up if they're impossible to take - Celebrating another culture should no longer have missing effects - Excluded children from trying to murder you in The Timely Artifact - Fixed issues with A Sweet Farewell event - Fixed Marble Scepter using bone visuals, now use regalia - Fixed pagan faiths losing their court chaplain titles when reformed - A Shadow in the Night should no longer show percent chances of nothing - Fixed hunt hide/skull event not firing if no skull was available to make it more common, and improved/fixed other issues with hunt events - Fixed OOS caused by duplicate players - Fixed another rare OOS
That’s it for this time, we hope you’ll enjoy the changes we’re making in 1.5.1!