• 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.
What! The thing you are doing in your free time with no hope of compensation isn't done yet? For shame! Dishonor on you! Dishonor on your cow! Dishonor on your whole family!

[/sarcasm]

Good luck finding balance between your hobbies.
 
  • 1
Reactions:
I was expressing an opinion I did not agree with in a bombastic way to thoroughly discredit it. I thought that is what sarcasm was. If not, then I don't know what to call my behavior. *shrug*

Err...i didn'texpect to have to go as serious into this, but okay.
AraYNX7.gif


T'was simply an ironic comment, assuming that you are not sneering or mocking him.
If you'd had a sarcastic, so sneering intend with your ironic comment, then one interpretation would be that the sentence implies that you believe for him to do the mod at work (Paradox maybe even) and get compensation and thus you mocking him for pretending not to, as example.

Wiktionary explains the difference as thus
....Strictly speaking, an ironic statement is one that means the opposite of its content, and a sarcastic statement is an acerbic or sardonic one.
To distinguish the two, joyfully saying "Oh my gosh, I hate you!" to sincerely congratulate one's best friend on their good fortune is ironic,
but not sarcastic; saying, "I'm not a mind reader, okay?" is sarcastic, but not ironic.

Sorry.
I guess i'm now 'smarty -pants'.
MfvvyDB.gif

Had no intention to come across as potentialy snobby, in case it does..

Another source :

I intended to also use the Cambridge dictionary, but that apparently went full retard, so to speak
and immediatley got lowered in my bookmark settings, as a result. Might delete it actually.

By the way, we just followed a good old Paradox forum tradition and slightly derailed the thread topic for a wee bit.
I think we two should be proud of us doing that unintentionally. *taps on shoulder*
Suddenly don't feel as bad anymore going offtopic.
6jqFBQI.gif
 
  • 1Like
Reactions:
Dev diary 106
Dev diary 106 - Back in the Saddle

Work has started up again -- it didn't completely stop as I found some assorted smaller things that were possible to fix in about as much time as it would have taken to make a "Fix later!" note, but still -- and the initial focus is on setting up some "infrastructure" that will be very useful in the future, both in the 14.2.0 update and in general. Note that this will be a fairly technical dev diary because of this.


Relationship scripted_effects:

As you might know if you've got some familiarity with the CK2 scripting language, friends/lovers/rivals are set up/removed with commands like "add_friend = <new friend>" and "remove_lover = <former lover>", which do hardcoded things. You might also know there's something known as an on_action, e.g. on_new_holder, which fires certain effects or events whenever the on_action happens (e.g. "If k_france is West Francia and a non-Karling gets the title, rename it to France").

Unfortunately, there are no such commands related to friends/lovers/rivals, which means that if something is supposed to happen whenever you get or lose one of those you cannot easily hook it in everywhere. This is annoying, and since "add_/remove_lover" use definitely needed to be reviewed as part of 14.2.0 we now have scripted_effects set up to handle relationship changes so that we can hook in various things; for example, vanilla has a "Budding Romance" modifier that it doesn't really bother to clean up if two characters definitely aren't pursuing any kind of romance any longer, which we now can clean up in our effects.

The scripted_effects related to adding friends have been hooked in already, and removing those and adding/removing rivals is next on my list, but the love-related ones will not be hooked in for a while due to the next item on the agenda for this dev diary.


Lovers and related topics:

As mentioned back in Dev diary 95, we have added separate traits for tracking romantic and sexual attraction, and this means we'll need to handle the topic of lovers differently than vanilla does... which probably is a good thing, because even ignoring that aspect vanilla's handling is pretty flawed:

- Rivals can become lovers while remaining rivals, and lovers can become rivals without ending the lover relationship. It might not be entirely unthinkable that characters that really don't like each other still would be fine with sleeping with each other even without societal pressure (e.g. marriage and an expectation of children), but from a scripting perspective it gets very messy because e.g. you can't assume that a lover would be willing to die for their lover because they like them or that a rival looking for dirt happily would expose any affair of their rival because it'll not hurt them.

- With only a small number of exceptions, vanilla makes no distinction between two characters falling in love and those two characters becoming lovers; there's basically no "We have confessed our love for each other, but we respect each other's partners too much to contemplate sleeping together", basically no "Yeah, we're having fun in bed every now and then, but both of us know it's nothing serious", and so forth. Society, religious authorities, relatives, and specific individuals can -- and could -- definitely be conflating the two, but it's far from ideal.

- Lover relationships are bidirectional. Obviously, that makes sense when it comes to characters sleeping together -- no matter the specifics of what they might be getting up to, both are involved in the activities in some manner -- but it means that the characters have the same feelings for each other (outside any extra modifiers), as opposed to one being rather more in love than the other.

- With only a few exceptions, characters are either deeply in love or not in love at all (not counting any "Am I in love with X?" choice events). There's little in the way of romance slowly growing or fading over time.


We'll be approaching things differently in 14.2.0:

- Rivalries and Lovers/love will be treated as opposites script-side; thanks to the aforementioned scripted_effects we're adding, this will work out very well.

- We'll remove nearly all the opinion boost from the "Lover" opinion/relationship -- a little will remain, because presumably the relationship is seen as a positive thing by the two characters -- and set up a separate system for love. We cannot add a new space in the character window for "Characters you love/that love you", but we'll add scripted_triggers as needed (e.g. is_romantically_involved_with_root_trigger = yes as a romantic (and not-guaranteed-lover) counterpart to is_friend = ROOT) and hook them in so that things work as intended everywhere (and the player will probably get some kind of "List my loves" self-targeted decision).

This will greatly help with the modelling of both asexual characters with no sex_interest trait that end up in a romantic relationship (as setting them up as lovers would mean that outside Celibacy/etc. the game would dictate that they very much were sleeping together, which outside a marriage/concubine relationship would be unwanted behaviour) and non-asexual but aromantic characters.

- While a Lover relationship will be treated as incompatible with a rivalry, it will generally not be considered sufficient on its own to make characters very self-sacrificing or completely opposed to scheming against you; that'll be for romantic love (and also friends).

- All events which can result in characters becoming lovers will be investigated to check whether they actually should just be starting some kind of romantic relationship (which over time might evolve); this will involve evaluating both the localisation and the context.

- Remaining lover/tumbling events (after the above) will generally be altered to be a modified version of the "Successiful Seduction; now what?" event. It will probably have at least four options -- 1) "It was just a one-time thing!" (just one tumble), 2) "Let's do this again!" (Lover relationship), 3) "I rather like you!" (Lover relationship plus initial/growing romance), and 4) "I love you!" (Lover relationship and full love); wording not final -- but might get a few trait/skill-specific adjustments (e.g. high Diplomacy will possibly unlock a gentler version of "No, this isn't happening again!").

There will be some checks on the availability -- e.g. a character that doesn't get romantic attraction towards the other's sex will not get the last two options, and a character already in love with their partner will also not get them because they're obviously superfluous -- and both parties will get a similar event and react to what the other went with -- e.g. if character A declares their everlasting love while character B decides that no, it was a one-time thing with no feelings attached, chances are character A will be less than happy -- and some events will possibly be a bit different due to the context, but generally speaking this will be the setup.

- Love will be handled in a unidirectional manner (though there will be some bidirectional checks as needed); you might be deeply in love with them, while they might still be unsure about their feelings or even feel somewhat hostile towards you. This will allow for characters to fall in love with characters that simply have an incompatible orientation with them without that being weird from the other direction, set up possibilities for one character to be taking advantage of the other's feelings for them or for them to attempt grand -- and possibly dangerous, in one way or another -- romantic gestures in order to make the other person finally notice them, and allow various other things that might be useful, whether in 14.2.0 or in the future.

- We will make better use of the "Budding Romance" opinion than vanilla did for handling not-quite-in-love-yet situations. Not all romantic feelings will grow into full love, but there will be some room for love to grow over time.

We will also make use of some things vanilla added but didn't exactly bother to use very much...


00_relation_triggers.txt:

Did you know vanilla has set up scripted_triggers like "potentially_interested_in_rivaling_root_trigger" and "possibly_romantically_interested_in_each_other_trigger"? Well, the vanilla devs sure didn't bother with them in many places, so maybe some of them didn't know about them.

These scripted_triggers certainly are not as thorough as they should be -- for example, the ones about possible "romantic interest" in vanilla terms (that'd be combined romantic and sexual interest in our terms) already checks for not being rivals (an indication that treating those as opposites isn't so odd, I'd say), it doesn't check for "minor" things like "Did they attempt to murder me?" that presumably should be blockers even if you somehow get them above the +45 opinion threshold (which sure isn't a requirement everywhere vanilla adds lovers...) -- but polishing them up (and adjusting things to work with our stuff) and hooking them into various things is certainly something we should do as part of our work to have more consistency when it comes to which characters end up as lovers (and the like).

There are also triggers in that file for rivals and friends; I currently think polishing them up a bit is a 14.2.0 goal, but that hooking them in where relevant -- again, vanilla didn't really bother with them -- will have to wait until 14.2.1.

Returning to the subject of the triggers related to lovers, there will of course also need to be triggers for stuff like "would_potentially_cheat_on_current_spouse_with_root_trigger" (name not final) since there is -- or at least should be -- a difference between finding someone hypothetically interesting under different circumstances and always being interested... which brings us to the next topic.


Adultery fallout:

We'll be reviewing adultery fallout, both as there might be cases where it should not be taken as poorly by the spouse (e.g. they have an incompatible orientation and are more upset over the perception of others than over you rather sleeping with someone else) and as there might be others that have a strong opinion (and should get imprisonment reasons/etc.) than the person cheated on, e.g. the reigning monarch if you sleep with the crown prince's wife or his son's wife. This has been mentioned in the past, but since it was relevant to the previous topic I thought it should be brought up again.


Regarding that CK3 announcement:

Finally, I think I need to take the opportunity to address the fact that CK3 today announced that they will be expanding the map much further east and cover areas such as

I will most definitely be paying attention to what they end up doing, seeing as I have some "small" amount of interest in the area. However, considering I still feel several hardcoded design decisions in CK3 are pretty terrible and that there are no indications that those are going anywhere, I wouldn't say the chances of me picking up CK3 has grown significantly, and the odds of me abandoning CK2 (and Tianxia) for CK3 just because they're adding the Far East are effectively zero. Still, I hope they do a good job so that the anti-"China" crowd doesn't feel vindicated, even if I suspect at least some design decisions will be very different from my tastes.

If they do end up doing something very nice in CK3, well, assuming it is feasible to do I think I shall engage in the sincerest form of flattery and attempt to add something similar to Tianxia (when time permits; it doesn't make sense to drop all other priorities).


That's all for today. Given that the focus in the near tearm will be on "infrastructure", I'm really not sure when the next dev diary will be posted as that might not be very interesting to write or read about, but maybe some tangential work will be done sooner rather than later.
 
  • 7Like
  • 2Love
  • 2
Reactions:
Hi, I wanted to know if this is compatible with CK2PLUS?

No; we have changed a good number of the same files as them, so even disregarding how well the things that don't have file overlap would mesh -- probably not well, since they weren't designed with each other in mind -- you'd at best get a buggy mess if you tried running both of them at the same time, and a compatch is far too much work for us to consider (and I don't think the CK2+ want to make compatches with other big mods either).
 
  • 1
  • 1
Reactions:
Hello, playing on latest version of the mod and it seems like the game/mod auto releases any landed character imprisoned (i have only paid attention to lords under the tang empire, as i'm playing a character there myself), i had it happened to me when i managed to capture a lord i was at war with but it also happened to the tang emperor, he defeated a coup faction and all the traitors got released right after he got them al.

I'm unsure how to figure out what caused this or if it's a feature.

While i'm here, does this mod have any other page/platform?
 
Last edited:
Hello, playing on latest version of the mod and it seems like the game/mod auto releases any landed character imprisoned (i have only paid attention to lords under the tang empire, as i'm playing a character there myself), i had it happened to me when i managed to capture a lord i was at war with but it also happened to the tang emperor, he defeated a coup faction and all the traitors got released right after he got them al.

I'm unsure how to figure out what caused this or if it's a feature.

This is the first I've heard of it, and it's not an intended feature, so it sounds like a bug. By "coup faction", do you mean a claimant faction, a takeover faction, or a regular tyranny/revoke/overthrow war? I'll want to test the right thing

While i'm here, does this mod have any other page/platform?

No.
 
This is the first I've heard of it, and it's not an intended feature, so it sounds like a bug. By "coup faction", do you mean a claimant faction, a takeover faction, or a regular tyranny/revoke/overthrow war? I'll want to test the right thing
i'm not entirely sure, the tang emperor brother is in a claimant civil war

anyways i should have time later today to try a different savefile, i'm fine restarting if the problem goes only so far, if i see the bug again i will post here

1744291256874.png
 
i'm not entirely sure, the tang emperor brother is in a claimant civil war

anyways i should have time later today to try a different savefile, i'm fine restarting if the problem goes only so far, if i see the bug again i will post here

View attachment 1279425

Okay, so I can reproduce the issue... and it appears to happen whenever someone is imprisoned (or at least when a playable ruler gets imprisoned; I didn't test any courtiers...), not just in relation to civil wars. Funny what you miss when doing observer runs and very targeted playtesting...

The issue doesn't seem to be present in 14.1.0, but 14.1.1 saves almost certainly won't work on 14.1.0 (and you'll of course miss out on 14.1.1 bugfixes and additions). That means it can be narrowed down to about 50k lines of script across 486 files (some of which can be ruled out very easily due to the file type).


I will attempt to isolate what's causing it and try to provide a hotfix for this specific issue since it is pretty severe; however, I am extremely busy until next Thursday, so unless it is a very obvious issue with a very quick fix it'll be at least a week until I can attempt to fix it.
 
  • 3Like
  • 2
  • 1
Reactions:
Thank you for taking note, Silver.
Yes i tried a bit and it seems no matter the reason a landed character is imprisoned they will always get released right away.
Is 14.1.0 available to download? other bugs might be less distributive than this one.
I can see at least version 14.0.0 is listed on the old thread.
 
Last edited:
Hotfix 14.1.1.1 has now been released; it should fix the prisoner release issue.
 
  • 5Like
Reactions:
upon succession under chinese succession and an imperial chinese gov all the county level titles (baronies were preserved) my character had were "granted" to this (seemingly) random vassal without any action from myself

also the heir's (shown here as current character) landed titles before becoming emporor were "granted" to this same vassal and a different vassal
1745108965689.png


once more unsure if that is a feature or bug, upon inspection it seems non-primary titles under chinese succession become "agnatic elective" which may be the cause, intended or not
you can replicate this occurrence, at least i was able to see it more than once on this savefile by selecting other sons of heaven and using "die" command

this 2nd picture is of another son of heaven titles, as an example
1745109332334.png
 
The titles being handed out is... half-buggy as it currently works.

We had a rather more severe issue where AI CI rulers got very confused and for whatever reason didn't hand out any counties they inherited (or usurped), resulting in them having practically no levies and no income and all of their vassals being upset due to their demesne size being too large, predictably resulting in interesting times because of AI stupidity, so an event was added to help them out. It was supposed to be AI only, but there's a very brief window during inheritance where your heir isn't player-controlled and the event unfortunately fires in that window. It will be fixed in 14.2.0, along with a couple of related issues.


The title showing up as "Agnatic Elective" is perfectly normal; compare with the ERE's secondary titles when the primary heir is dynastic.
 
  • 1Like
Reactions:
Hey there, I'm not sure if this has been brought up before, but I noticed that the dynasty tree for the Minamoto clan is completely broken because of the many lines of emperors' descendants all put together into one dynasty. I read up a bit on the Minamoto, and conceptually, I guess it makes sense to have it this way, but what if we instead split it up into the specific descendant lines of emperors? This would fix the dynasty trees, but also break the clan's "wholeness", which I'm unsure is in line with your philosophy. I also don't know to what extent this would break the code, or the complexity it would add to the surname granting mechanic. This is just something I thought about because the dynasty screen is a bit difficult to navigate currently. What are your thoughts on this?
 
Hey there, I'm not sure if this has been brought up before, but I noticed that the dynasty tree for the Minamoto clan is completely broken because of the many lines of emperors' descendants all put together into one dynasty. I read up a bit on the Minamoto, and conceptually, I guess it makes sense to have it this way, but what if we instead split it up into the specific descendant lines of emperors? This would fix the dynasty trees, but also break the clan's "wholeness", which I'm unsure is in line with your philosophy. I also don't know to what extent this would break the code, or the complexity it would add to the surname granting mechanic. This is just something I thought about because the dynasty screen is a bit difficult to navigate currently. What are your thoughts on this?

We'll not break them up into separate branches, for several reasons:

- It'd take a lot of work (and, to be clear, I'd turn it down if anyone volunteered, because I don't particularly want it in the mod), and reviewing the Minamotos again is definitely not a priority.
- It'd not work at all for Minamotos that were created by any ahistorical emperors during gameplay, and while that's currently something the player can opt out of doing it's possible we'll add some way for it to happen differently that'd make it less opt-outable.
- Seeing as they all would have the same dynasty name and CoA (because that'd be historical, and it would also be extremely ugly and weird with e.g. "Seiwa [or Kawachi] Genji Yoritomo" insread of "Minamoto Yoritomo"), it'd easily confuse the player regarding dynastic ties (and we'd also conceivably get false positive bug reports, e.g. characters not getting Dynastic Kinslayer traits when they "should").
- It'd not fix the issue, seeing as there's frequently multiple origins for the same branch (i.e. "X Genji" might start from multiple sons/grandsons/etc. of the relevant emperor).
- There are similar issuses with other dynasties (e.g. the Tairas and the Li (Tang) family, just off the top of my head).
 
  • 2
Reactions:
We cannot copy any DLC assets -- and, to my knowledge (our Content Pack assets predate me joining the team, and the only involvement I've had with the Content Pack is fixing issues in our .gfx files, which definitely are not DLC files...), we have not; should I become aware that any DLC assets are present in Tianxia I would remove them right away (read: Assuming no connection/forum issues, the Content Pack would be gone within a minute of me learning of such an issue being present, and taking care of the offending file(s) would be the top priority as far as work on the mod goes) -- as that'd violate the modding rules (specifically Rule 7) that we are required to adhere to (and that I personally find very reasonable; this is not the thread to argue about the rules).

Neither we nor PDS can really limit what you do on your computer, but we ask that you don't post anything containing DLC assets in this thread, and that you likewise refrain from linking or otherwise directing people to something containing DLC assets (obviously excluding the Steam/PDS Store pages) in this thread.
Greetings. I figured out how to remove the Buddhist robes from Confucian and Taoist religious rulers and Libationers in their portraits without copying DLC assets.
In common/religions/00_indian_group.txt, simply remove the following lines from the taoist and confucian sections-
Code:
religious_clothing_head = 10
religious_clothing_priest = 10
This causes the characters to wear their normal clothing, since they're not told to use a specific religious clothing.
I'm glad I found a clean regular fix for this. It really bugged me.
As always, thanks for your continued work. I'll try out the latest version. Hopefully my old 14.1.0? save will work.

EDIT
There are still instances of is_inaccessible_or_incapable_trigger = yes in events/mnm_job_offmap.txt on lines 1740, 1879, 1960, 2040.
These look like errors to me, so they should instead be is_inaccessible_or_incapable_trigger = no.
And on line 1655, is_devil_worshiper_trigger = yes was changed to is_devil_worshiper_trigger = no in 14.1.1? This also seems incorrect? It's supposed to be finding devil worshippers with is_devil_worshiper_trigger = yes, isn't it?
 
Last edited:
  • 1
Reactions:
Greetings. I figured out how to remove the Buddhist robes from Confucian and Taoist religious rulers and Libationers in their portraits without copying DLC assets.
In common/religions/00_indian_group.txt, simply remove the following lines from the taoist and confucian sections-
Code:
religious_clothing_head = 10
religious_clothing_priest = 10
This causes the characters to wear their normal clothing, since they're not told to use a specific religious clothing.
I'm glad I found a clean regular fix for this. It really bugged me.
As always, thanks for your continued work. I'll try out the latest version. Hopefully my old 14.1.0? save will work.

The Taoist religious clothing is set up consistently with vanilla (and Confucian just copies that). I'm the wrong person to say what is or isn't accurate clothing-wise unless it is very obviously wrong (e.g. if they were wearing the Jain facemasks or the funny hat guy's getup); for the moment, I will leave this unchanged since I would rather not implement a fix that is just as wrong. I will make a note to look into it at some point, but it might very possibly not happen in 14.2.0 or even the traditional bugfix patch for that release since visual issues generally are lower priority and since it might make sense to lump this together with an overall check on this (and 14.3.0 has much more of a focus on religion than what's being worked on now, so...).

I'll also note that all religious clothing used in vanilla (including with DLCs) is non-DLC locked (it's in the "religious_<male/female>_<clothing/headgear><_behind>.dds" files in \gfx\characters"), so in theory any outfit from there is an option (but, again, don't expect any changes soon).

EDIT
There are still instances of is_inaccessible_or_incapable_trigger = yes in events/mnm_job_offmap.txt on lines 1740, 1879, 1960, 2040.
These look like errors to me, so they should instead be is_inaccessible_or_incapable_trigger = no.
And on line 1655, is_devil_worshiper_trigger = yes was changed to is_devil_worshiper_trigger = no in 14.1.1? This also seems incorrect? It's supposed to be finding devil worshippers with is_devil_worshiper_trigger = yes, isn't it?

I think those might have fallen victim of a find-replace targeting the wrong file or something similar; thanks for noticing.
 
  • 1
Reactions: