• 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.
Hey Jord, I do have a question. Maybe its just me, but it seems every game, and I mean every new game I start, Heinrich IV of Germany's first child with Berta of Savoy is always a boy, and this boys name is ALWAYS Deitmar. Is this just a coincidence every time or something more? I know it probably has nothing to do with the IP, but I thought you might have some idea. Also, can't wait for the Update.
 
It's probably somehow connected to the numbers at the end of the DNA string you can see in the savegame, the first child of any ruler will nearly always be of the same gender and if so, will definitely get the same name.

If the characters file in the scenario changes (as it does in all DVIP updates since that's where I do most of my changes) all these numbers on game start are different, but I don't know how they are calculated so I can't influence them.
 
I don't know if I should post this in the mod section, in bug reports, or what...

I've been playing DVIP off and on for the last several months as the DoApulia>KoNaples 1066 start with little or no problems.

Recently I've tried playing as Byzantium from the 1337 start and Nicea from 1204 start, and I've been getting frequent crashes.

From exceptions log

######## EXCEPTION: 0xC0000005 at address: 0x0044915B: ACCESS VIOLATION read attempt to address 0x00000008
06/05/10 15:29:34
SymGetLineFromAddr(): GetLastError = 126


######## EXCEPTION: 0xC0000005 at address: 0x0044915B: ACCESS VIOLATION read attempt to address 0x00000008
06/05/10 15:35:42
SymGetLineFromAddr(): GetLastError = 126


######## EXCEPTION: 0xC0000005 at address: 0x0044915B: ACCESS VIOLATION read attempt to address 0x00000008
06/05/10 15:39:17
SymGetLineFromAddr(): GetLastError = 126
SymGetLineFromAddr(): GetLastError = 126
SymGetLineFromAddr(): GetLastError = 126
SymGetLineFromAddr(): GetLastError = 126


######## EXCEPTION: 0xC0000005 at address: 0x0044915B: ACCESS VIOLATION read attempt to address 0x00000008
06/05/10 15:43:52
SymGetLineFromAddr(): GetLastError = 126


######## EXCEPTION: 0xC0000005 at address: 0x0044915B: ACCESS VIOLATION read attempt to address 0x00000008
06/05/10 15:53:52
SymGetLineFromAddr(): GetLastError = 126
As Byzantium from the 1337 start, seems to happen on the same day.

######## EXCEPTION: 0xC0000005 at address: 0x00579911: ACCESS VIOLATION read attempt to address 0x00000008
06/07/10 08:00:58


######## EXCEPTION: 0xC0000005 at address: 0x00579911: ACCESS VIOLATION read attempt to address 0x00000008
06/07/10 08:07:22


######## EXCEPTION: 0xC0000005 at address: 0x00579911: ACCESS VIOLATION read attempt to address 0x00000008
06/07/10 09:44:05

as nicea 1204 start, happens a short time after I start from my last save.
 
I have some suggestions for the 1066 scenario setup. All concerning the Duchy of Slesvig.

First the Duchy of Slesvig did not exist in 1066. It was created sometime between 1115 and 1131. (Knud Lavard a grandson of Svend Estridsen was made Earl of Slesvig in 1115, and at some point before he died, he started to use the German title Fürst which corresponds to Duke).

Second the county of Holstein should probably not be part of Denmark and definitely not have danish culture. The boundary between Denmark and Germany had been settle to be the boundary between Slesvig and Holstein in 1029 between the danish king Knud den Store and the German emperor Conrad II. On the other hand several sources say that Conrad gave Holstein to Knud to administrate. How long Holstein was in danish hands seems uncertain. It was definitely in in the hands of the Duke of Saxony by 1111, when he appointed the first duke of Holstein. I think it would be most correct to let it belong to the duke of Saxony. The culture should be German the area where never inhabited by Danes.

Third I can find no sources that mentions that Harald Svendsen was count of Slevig, and since it was not the custom to give lands to your heir in Denmark I highly doubt he was. The first mention of a count of Slesvig is Harald's younger brother Olav which was count during the reign of his brother Knud 1080-1085. So I suggest moving Harald and his wife to the danish court and making Svend Estridsen (King of Denmark) count of Slesvig.

Last is concerning the name. Slesvig is the danish name for the city Slesvig which is called Schleswig in German and English, but the Danish name of the duchy of Slesvig during the time of the game was the Duchy of Sønderjylland (English South Jutland), the name duchy of Slesvig did not start being used in Denmark before around 1400 (the Germans did call it duchy of Schleswig during this time). So I suggest maybe changing the name of the Duchy since the other danish duchies have danish names.
 
The only problem I see with giving Schleswig to the King of Denmark is simply the fact that the AI will give it to him anyway. For every son of a ruler without land of his own, the ruler loses prestige. The AI will therefore give away territories to his sons until he runs out of sons or territories to avoid the penalty.
 
I have an event question:

I'm playing as Duke of Northumberland and have several kids. Every time a child is about 12, an event deducting massive Intrigue/Fighting/Stewardship etc. points happens about every 2 months. 1-5 points at a time. Is this supposed to happen and if so, why? Maybe I'm missing something? Help, please. :wacko::(
Any help you can give is appreciated! :D
Hey, I'm having this problem too. It happens constantly to me and it's pretty annoying having a person go from 10 intrigue to 5 for no reason. I understand the reasoning behind this, it helps balance the game, but it's pretty harsh and I just don't like it. Is there any way I can disable it?
 
The next version will be a little less harsh and will solve the biggest issue: the wording.

If you want to get supermen anyway, ruining the entire game, follow the instructions a few posts up. Although if you say you understand the reasoning behind it, you realise you're basically asking to undo a needed fix? It's not as if Wiz wrote his event I based mine on to be an ass, they serve a much needed purpose. Without this workaround you WILL see demesnes of 20 provinces, something CK was never designed for.

Compare the stats of dead characters like Charlemagne or someone like William the Conqueror -- in CK these were extraordinary... in DV without a skill cap (enforced by event since we must) they are actually weak compared to characters born in game.

I wish Johan would release a new beta with a skill cap... I can't make these events fire invisibly.
 
Compare the stats of dead characters like Charlemagne or someone like William the Conqueror -- in CK these were extraordinary... in DV without a skill cap (enforced by event since we must) they are actually weak compared to characters born in game.

I wish Johan would release a new beta with a skill cap... I can't make these events fire invisibly.

I have changed events on education and have added reduction
http://www.megaupload.com/?d=0IAAC9E6
 
I would like to say that I'm still working on trying to find out what causes the game to crash on Macs with regular DVIP installed.

I am doing this by adding events from DVIP one at a time to the game, using new games as well as reloading existing games. So far, no crashes. I have added the following event files from DVIP without issue:

DVIP_melting_pots.txt
provincial_conversion_events.txt
DVIP conquests.txt
lordship_events.txt
DVIP_bugfixes.txt
bankruptcy_events.txt
templar_events.txt
DVIP_set_laws.txt
stability_events.txt
DVIP_varia.txt
religious_events.txt
fosterling_events.txt

Still many more to go.

I'm going to try and use the break_free.txt on its own because in my Savoy game I just had a bunch of the states that broke away from Germany pledge themselves to the Kingdoms of Leon and Norway, turning them into super-powerful empires with lands all over Western Europe for no good reason. I just hate stuff like that. :rolleyes: I wish you could make it so a state has to be within a certain distance of its liege in order to vassalize, but I guess that would make having Crusader kingdoms as your vassal problematic if you're France, England, Spain, etc.
 
Idk if it is really requested around here, and I don't know how desirous it would be to include in an official update of this mod, but I did see a while back a question seeking to create a new melting pot event for the Levant. Personally, I would like to see this, but I don't know how practical it would be. While the Crusades IRL didn't make a lasting impression, there was plenty of interracial marriages between the "Franks" and the "Saracens". Should the player conquer the Middle East, and a lasting presence is established, there there could be a melting pot event to create a hybrid, mayhaps call the culture Levantine or possibly Syrian. It would require a new culture being created, and I don't know if there are any tags available, but one could just simply recycle the French Names list, with a few alterations and include some close arabic names and bam! At any rate this is merely an idea to throw on the table for your next update jord.
 
Idk if it is really requested around here, and I don't know how desirous it would be to include in an official update of this mod, but I did see a while back a question seeking to create a new melting pot event for the Levant. Personally, I would like to see this, but I don't know how practical it would be. While the Crusades IRL didn't make a lasting impression, there was plenty of interracial marriages between the "Franks" and the "Saracens". Should the player conquer the Middle East, and a lasting presence is established, there there could be a melting pot event to create a hybrid, mayhaps call the culture Levantine or possibly Syrian. It would require a new culture being created, and I don't know if there are any tags available, but one could just simply recycle the French Names list, with a few alterations and include some close arabic names and bam! At any rate this is merely an idea to throw on the table for your next update jord.


But what if the Middle East isn't conquered by 'Frankish' crusaders but by Polish, German, Swedish or Irish ones ? Then a recycled French namelist doesn't make much sense.
 
So break_free.txt does indeed cause the game to crash and I'm thinking it has to do with how CPU intensive it is. I have a 1.67 GHz PowerPC G4 processor so I run CK+DV vanilla without too much trouble but I think having a huge, huge event like the break free event might be too much for it. I'm going to test this theory by scaling the break_free.txt event down to a "wrong culture" condition, leaving out the "wrong religion", "wrong government", "wrong region" variables.

I also took out things like traits, a lot of the modifiers, etc. in order to make it miles simpler.

Here is my first go at it. Please, look at it and tell me if you think I got it right. I'll test it and let you guys know how it goes:

# Foreign vassal breaks free under certain conditions
# Uses (adapted) triggers and modifiers originally by Byakhiam for event 6451 instance 5

character_event = {
id = 23200
picture = "event_claim"
trigger = {
condition = { type = ruler }
condition = { type = is_vassal }
condition = { type = and
condition = { type = religion value = catholic }
condition = { type = liege
condition = { type = not value = { type = title value = PAPA } }
}
}
condition = { type = or
# Scandinavian
condition = { type = and #Group
condition = { type = or
condition = { type = culture value = swedish }
condition = { type = culture value = danish }
}
condition = { type = liege
condition = { type = and
condition = { type = not value = { type = culture value = norwegian } }
condition = { type = not value = { type = culture value = swedish } }
condition = { type = not value = { type = culture value = danish } }
}
}
}
condition = { type = and # Norwegian
condition = { type = culture value = norwegian }
condition = { type = liege
condition = { type = and
condition = { type = not value = { type = culture value = norwegian } }
condition = { type = not value = { type = culture value = swedish } }
condition = { type = not value = { type = culture value = danish } }
condition = { type = not value = { type = culture value = scottish } }
condition = { type = not value = { type = culture value = irish } } #Gaelic
}
}
}
# Anglo
condition = { type = and # Scots
condition = { type = culture value = scottish }
condition = { type = liege
condition = { type = and
condition = { type = not value = { type = culture value = saxon } }
condition = { type = not value = { type = culture value = english } }
condition = { type = not value = { type = culture value = scottish } }
condition = { type = not value = { type = culture value = irish } } #Gaelic
condition = { type = not value = { type = culture value = norwegian } }
}
}
}
condition = { type = and # Saxon
condition = { type = culture value = saxon }
condition = { type = liege
condition = { type = and
condition = { type = not value = { type = culture value = saxon } }
condition = { type = not value = { type = culture value = english } }
condition = { type = not value = { type = culture value = scottish } }
}
}
}
condition = { type = and # English
condition = { type = culture value = english }
condition = { type = liege
condition = { type = and
condition = { type = not value = { type = culture value = saxon } }
condition = { type = not value = { type = culture value = english } }
condition = { type = not value = { type = culture value = scottish } }
condition = { type = not value = { type = culture value = norman } }
}
}
}
# Norman
condition = { type = and
condition = { type = culture value = norman }
condition = { type = liege
condition = { type = and
condition = { type = not value = { type = culture value = norman } }
condition = { type = not value = { type = culture value = english } }
condition = { type = not value = { type = culture value = frankish } }
condition = { type = not value = { type = culture value = italian } }
}
}
}
# Celtic
condition = { type = and # Group
condition = { type = or
condition = { type = culture value = welsh }
condition = { type = culture value = celtic } #Breton
}
condition = { type = liege
condition = { type = and
condition = { type = not value = { type = culture value = irish } }
condition = { type = not value = { type = culture value = welsh } }
condition = { type = not value = { type = culture value = celtic } }
}
}
}
condition = { type = and # Gaelic
condition = { type = or
condition = { type = culture value = irish }
}
condition = { type = liege
condition = { type = and
condition = { type = not value = { type = culture value = irish } }
condition = { type = not value = { type = culture value = scottish } }
condition = { type = not value = { type = culture value = norwegian } }
}
}
}
# Ugricbaltic
condition = { type = and # Group
condition = { type = or
condition = { type = culture value = prussian }
condition = { type = culture value = lettigallish }
condition = { type = culture value = lithuanian }
}
condition = { type = liege
condition = { type = and
condition = { type = not value = { type = culture value = finnish } }
condition = { type = not value = { type = culture value = prussian } }
condition = { type = not value = { type = culture value = lettigallish } }
condition = { type = not value = { type = culture value = lithuanian } }
condition = { type = not value = { type = culture value = ugricbaltic } }
}
}
}
condition = { type = and # Finnish
condition = { type = culture value = finnish }
condition = { type = liege
condition = { type = and
condition = { type = not value = { type = culture value = finnish } }
condition = { type = not value = { type = culture value = prussian } }
condition = { type = not value = { type = culture value = lettigallish } }
condition = { type = not value = { type = culture value = lithuanian } }
condition = { type = not value = { type = culture value = ugricbaltic } }
condition = { type = not value = { type = culture value = lappish } }
condition = { type = not value = { type = culture value = swedish } }
}
}
}
condition = { type = and # Mordvin
condition = { type = culture value = ugricbaltic }
condition = { type = liege
condition = { type = and
condition = { type = not value = { type = culture value = lappish } }
condition = { type = not value = { type = culture value = finnish } }
condition = { type = not value = { type = culture value = prussian } }
condition = { type = not value = { type = culture value = lettigallish } }
condition = { type = not value = { type = culture value = lithuanian } }
condition = { type = not value = { type = culture value = ugricbaltic } }
condition = { type = not value = { type = culture value = lappish } }
}
}
}
# Saami
condition = { type = and
condition = { type = culture value = lappish }
condition = { type = liege
condition = { type = and
condition = { type = not value = { type = culture value = lappish } }
condition = { type = not value = { type = culture value = finnish } }
condition = { type = not value = { type = culture value = ugricbaltic } }
}
}
}
# Germanic
condition = { type = and # German
condition = { type = culture value = german }
condition = { type = liege
condition = { type = and
condition = { type = not value = { type = culture value = german } }
condition = { type = not value = { type = culture value = dutch } }
}
}
}
condition = { type = and # Dutch
condition = { type = culture value = dutch }
condition = { type = liege
condition = { type = and
condition = { type = not value = { type = culture value = german } }
condition = { type = not value = { type = culture value = dutch } }
condition = { type = not value = { type = culture value = frankish } }
}
}
}
# Frankish
condition = { type = and # French
condition = { type = culture value = frankish }
condition = { type = liege
condition = { type = and
condition = { type = not value = { type = culture value = frankish } }
condition = { type = not value = { type = culture value = latin } }
}
}
}
condition = { type = and # Occitan
condition = { type = culture value = latin }
condition = { type = liege
condition = { type = and
condition = { type = not value = { type = culture value = frankish } }
condition = { type = not value = { type = culture value = latin } }
condition = { type = not value = { type = culture value = catalan } }
condition = { type = not value = { type = culture value = italian } }
condition = { type = not value = { type = culture value = german } }
}
}
}
# Italian
condition = { type = and
condition = { type = culture value = italian }
condition = { type = liege
condition = { type = and
condition = { type = not value = { type = culture value = italian } }
condition = { type = not value = { type = culture value = latin } }
condition = { type = not value = { type = culture value = norman } }
condition = { type = not value = { type = culture value = german } }
}
}
}
# Iberian
condition = { type = and # Group
condition = { type = or
condition = { type = culture value = castillan }
condition = { type = culture value = portuguese }
}
condition = { type = liege
condition = { type = and
condition = { type = not value = { type = culture value = catalan } }
condition = { type = not value = { type = culture value = castillan } }
condition = { type = not value = { type = culture value = portuguese } }
}
}
}
condition = { type = and # Catalan
condition = { type = culture value = catalan }
condition = { type = liege
condition = { type = and
condition = { type = not value = { type = culture value = catalan } }
condition = { type = not value = { type = culture value = castillan } }
condition = { type = not value = { type = culture value = portuguese } }
condition = { type = not value = { type = culture value = latin } }
}
}
}
# Slav
condition = { type = and # Group
condition = { type = or
condition = { type = culture value = hungarian }
condition = { type = culture value = bohemian }
condition = { type = culture value = westernslavic }
condition = { type = culture value = easternslavic }
condition = { type = culture value = southslavic }
condition = { type = culture value = polish }
condition = { type = culture value = russian }
}
condition = { type = liege
condition = { type = and
condition = { type = not value = { type = culture value = hungarian } }
condition = { type = not value = { type = culture value = bohemian } }
condition = { type = not value = { type = culture value = westernslavic } }
condition = { type = not value = { type = culture value = easternslavic } }
condition = { type = not value = { type = culture value = southslavic } }
condition = { type = not value = { type = culture value = byzantine } }
condition = { type = not value = { type = culture value = polish } }
condition = { type = not value = { type = culture value = russian } }
condition = { type = not value = { type = culture value = iberian } }
}
}
}
condition = { type = and # Hungarian/Bohemian
condition = { type = or
condition = { type = culture value = hungarian }
condition = { type = culture value = bohemian }
}
condition = { type = liege
condition = { type = and
condition = { type = not value = { type = culture value = hungarian } }
condition = { type = not value = { type = culture value = bohemian } }
condition = { type = not value = { type = culture value = westernslavic } }
condition = { type = not value = { type = culture value = easternslavic } }
condition = { type = not value = { type = culture value = southslavic } }
condition = { type = not value = { type = culture value = byzantine } }
condition = { type = not value = { type = culture value = polish } }
condition = { type = not value = { type = culture value = russian } }
condition = { type = not value = { type = culture value = iberian } }
condition = { type = not value = { type = culture value = german } }
}
}
}
condition = { type = and # Bulgarian/Vlach
condition = { type = or
condition = { type = culture value = byzantine }
condition = { type = culture value = iberian }
}
condition = { type = liege
condition = { type = and
condition = { type = not value = { type = culture value = hungarian } }
condition = { type = not value = { type = culture value = bohemian } }
condition = { type = not value = { type = culture value = westernslavic } }
condition = { type = not value = { type = culture value = easternslavic } }
condition = { type = not value = { type = culture value = southslavic } }
condition = { type = not value = { type = culture value = byzantine } }
condition = { type = not value = { type = culture value = polish } }
condition = { type = not value = { type = culture value = russian } }
condition = { type = not value = { type = culture value = iberian } }
}
}
}
# Byzantine
condition = { type = and # Greek
condition = { type = culture value = greek }
condition = { type = liege
condition = { type = and
condition = { type = not value = { type = culture value = greek } }
condition = { type = not value = { type = culture value = armenian } }
condition = { type = not value = { type = culture value = georgian } }
condition = { type = not value = { type = culture value = none } }
}
}
}
condition = { type = and # Armenian
condition = { type = culture value = armenian }
condition = { type = liege
condition = { type = and
condition = { type = not value = { type = culture value = greek } }
condition = { type = not value = { type = culture value = armenian } }
condition = { type = not value = { type = culture value = georgian } }
condition = { type = not value = { type = culture value = none } }
}
}
}
condition = { type = and # Georgian
condition = { type = culture value = georgian }
condition = { type = liege
condition = { type = and
condition = { type = not value = { type = culture value = greek } }
condition = { type = not value = { type = culture value = armenian } }
condition = { type = not value = { type = culture value = georgian } }
condition = { type = not value = { type = culture value = alan } }
condition = { type = not value = { type = culture value = none } }
}
}
}
condition = { type = and # Nubian
condition = { type = culture value = none }
condition = { type = liege
condition = { type = and
condition = { type = not value = { type = culture value = greek } }
condition = { type = not value = { type = culture value = armenian } }
condition = { type = not value = { type = culture value = georgian } }
condition = { type = not value = { type = culture value = muslim } }
}
}
}
# Turkic
condition = { type = and # Group
condition = { type = or
condition = { type = culture value = turkish }
condition = { type = culture value = cuman }
condition = { type = culture value = pecheneg }
condition = { type = culture value = mongol }
}
condition = { type = liege
condition = { type = and
condition = { type = not value = { type = culture value = turkish } }
condition = { type = not value = { type = culture value = alan } }
condition = { type = not value = { type = culture value = cuman } }
condition = { type = not value = { type = culture value = pecheneg } }
condition = { type = not value = { type = culture value = mongol } }
}
}
}
condition = { type = and # Alan
condition = { type = culture value = alan }
condition = { type = liege
condition = { type = and
condition = { type = not value = { type = culture value = turkish } }
condition = { type = not value = { type = culture value = alan } }
condition = { type = not value = { type = culture value = cuman } }
condition = { type = not value = { type = culture value = pecheneg } }
condition = { type = not value = { type = culture value = mongol } }
condition = { type = not value = { type = culture value = georgian } }
}
}
}
# Basque
condition = { type = and
condition = { type = culture value = basque }
condition = { type = liege
condition = { type = not value = { type = culture value = basque } }
}
}
# Arab
condition = { type = and
condition = { type = culture value = muslim }
condition = { type = liege
condition = { type = and
condition = { type = not value = { type = culture value = muslim } }
condition = { type = not value = { type = culture value = none } }
}
}
}
# Berber
condition = { type = and
condition = { type = culture value = abghazian }
condition = { type = liege
condition = { type = and
condition = { type = not value = { type = culture value = abghazian } }
condition = { type = not value = { type = culture value = muslim } }
}
}
}
# Persian
condition = { type = and
condition = { type = culture value = persian }
condition = { type = liege
condition = { type = and
condition = { type = not value = { type = culture value = persian } }
condition = { type = not value = { type = culture value = muslim } }
}
}
}
}


mean_time_to_happen = {

months = 24

# This is probably the ruler's son, so don't break free
modifier = {
condition = { type = or
condition = { type = and
condition = { type = not value = { type = duchy } }
condition = { type = father condition = { type = and
condition = { type = ruler }
condition = { type = is_independent }
condition = { type = or
condition = { type = duchy }
condition = { type = kingdom }
}
} }
}
condition = { type = and
condition = { type = duchy }
condition = { type = father condition = { type = and
condition = { type = ruler }
condition = { type = kingdom }
} }
}
}
factor = 10.0
}

action_a = { # I want to break free
ai_chance = 95
modifier = {
condition = { type = trait value = proud }
factor = 1.06
}
modifier = {
condition = { type = trait value = selfish }
factor = 1.06
}
effect = { type = trigger for = liege value = 23201 } # Vassal broke free
effect = { type = independence }
effect = { type = loyalty value = 1.0 } # Reset loyalty
effect = { type = prestige value = 50 } # Give prestige
effect = { type = random chance = 10 # Risk of getting stressed
effect = { type = add_trait value = stress_symptom }
}
}
action_b = { # I like my liege
ai_chance = 5
effect = { type = relation for = liege value = 25 }
effect = { type = loyalty value = 0.2 }
effect = { type = prestige value = -20 }
effect = { type = piety value = 20 }
effect = { type = add_trait value = loyalist }
effect = { type = random chance = 10 # Trust a faraway liege will protect you?
effect = { type = add_trait value = trusting }
}
}
}

# Reaction event for liege
character_event = {
id = 23201
picture = "event_intrigue"
immidiate = {
effect = { type = prestige value = -50 } # Prestige hit for losing a vassal, prevents immediate repledging
effect = { type = relation for = previous_char value = -150 } # Big relationship hit to prevent repledging, and indicator for liege which vassal broke free
}
}

EDIT: The game is crashing to the desktop whenever I try to load up a game, so I think I coded the event wrong. I'll have to go over it, although I'm thinking about trying to write one from scratch.
 
Last edited:
I thought it might be this event, it's the biggest one I wrote and I know it can be very heavy on PCs... so probably even worse on the Mac port.

The reason your game crashes with your version is that you broke the nesting.
Try the following, culture trigger only and region MTTH modifiers removed:
Code:
# Foreign vassal breaks free under certain conditions
# Uses (adapted) triggers and modifiers originally by Byakhiam for event 6451 instance 5

character_event = {
	id = 23200
	picture = "event_claim"
	trigger = {
		condition = { type = ruler }
		condition = { type = is_vassal }
		condition = { type = not value = { type = form_of_goverment value = ecclestical } } # Bishoprics remain loyal
		condition = { type = not value = { type = atwar } } # No Manzikerts, there's another event for that
		condition = { type = not value = { type = trait value = loyalist } }
		condition = { type = not value = { type = trait value = rebellious } } # Fight out civil war first
		condition = { type = not value = { type = trait value = pneumonia } } # Not deadly ill
		condition = { type = not value = { type = trait value = war_invalid } } # Or Seriously wounded
		# Stick with very prestigious or befriended lieges
		condition = { type = liege
			condition = { type = not value = { type = is_friend } }
			condition = { type = not value = { type = prestige value = 5000 } }
			condition = { type = not value = { type = trait value = emperor } }
			condition = { type = not value = { type = atwar } }
			#condition = { type = ai } # AI liege only -- remove the # sign to cheat
		}
		# Being a catholic vassal of the Pope is very prestigious
		condition = { type = and
			condition = { type = religion value = catholic }
			condition = { type = liege
				condition = { type = not value = { type = title value = PAPA } }
			}
		}

		# Must be wrong culture to match, additional triggers removed
		condition = { type = or
					# Scandinavian
					condition = { type = and #Group
						condition = { type = or
							condition = { type = culture value = swedish }
							condition = { type = culture value = danish }
						}
						condition = { type = liege
							condition = { type = and
								condition = { type = not value = { type = culture value = norwegian } }
								condition = { type = not value = { type = culture value = swedish } }
								condition = { type = not value = { type = culture value = danish } }
							}
						}
					}
					condition = { type = and # Norwegian
						condition = { type = culture value = norwegian }
						condition = { type = liege
							condition = { type = and
								condition = { type = not value = { type = culture value = norwegian } }
								condition = { type = not value = { type = culture value = swedish } }
								condition = { type = not value = { type = culture value = danish } }
								condition = { type = not value = { type = culture value = scottish } }
								condition = { type = not value = { type = culture value = irish } } #Gaelic
							}
						}
					}						
					# Anglo
					condition = { type = and # Scots
						condition = { type = culture value = scottish }
						condition = { type = liege
							condition = { type = and
								condition = { type = not value = { type = culture value = saxon } }
								condition = { type = not value = { type = culture value = english } }
								condition = { type = not value = { type = culture value = scottish } }
								condition = { type = not value = { type = culture value = irish } } #Gaelic
								condition = { type = not value = { type = culture value = norwegian } }
							}
						}
					}
					condition = { type = and # Saxon
						condition = { type = culture value = saxon }
						condition = { type = liege
							condition = { type = and
								condition = { type = not value = { type = culture value = saxon } }
								condition = { type = not value = { type = culture value = english } }
								condition = { type = not value = { type = culture value = scottish } }
							}
						}
					}
					condition = { type = and # English
						condition = { type = culture value = english }
						condition = { type = liege
							condition = { type = and
								condition = { type = not value = { type = culture value = saxon } }
								condition = { type = not value = { type = culture value = english } }
								condition = { type = not value = { type = culture value = scottish } }
								condition = { type = not value = { type = culture value = norman } }
							}
						}
					}
					# Norman
					condition = { type = and
						condition = { type = culture value = norman }
						condition = { type = liege
							condition = { type = and
								condition = { type = not value = { type = culture value = norman } }
								condition = { type = not value = { type = culture value = english } }
								condition = { type = not value = { type = culture value = frankish } }
								condition = { type = not value = { type = culture value = italian } }
							}
						}
					}
					# Celtic
					condition = { type = and # Group
						condition = { type = or
							condition = { type = culture value = welsh }
							condition = { type = culture value = celtic } #Breton
						}
						condition = { type = liege
							condition = { type = and
								condition = { type = not value = { type = culture value = irish } }
								condition = { type = not value = { type = culture value = welsh } }
								condition = { type = not value = { type = culture value = celtic } }
							}
						}
					}
					condition = { type = and # Gaelic
						condition = { type = or
							condition = { type = culture value = irish }
						}
						condition = { type = liege
							condition = { type = and
								condition = { type = not value = { type = culture value = irish } }
								condition = { type = not value = { type = culture value = scottish } }
								condition = { type = not value = { type = culture value = norwegian } }
							}
						}
					}
					# Ugricbaltic
					condition = { type = and # Group
						condition = { type = or
							condition = { type = culture value = prussian }
							condition = { type = culture value = lettigallish }
							condition = { type = culture value = lithuanian }
						}
						condition = { type = liege
							condition = { type = and
								condition = { type = not value = { type = culture value = finnish } }
								condition = { type = not value = { type = culture value = prussian } }
								condition = { type = not value = { type = culture value = lettigallish } }
								condition = { type = not value = { type = culture value = lithuanian } }
								condition = { type = not value = { type = culture value = ugricbaltic } }
							}
						}
					}
					condition = { type = and # Finnish
						condition = { type = culture value = finnish }
						condition = { type = liege
							condition = { type = and
								condition = { type = not value = { type = culture value = finnish } }
								condition = { type = not value = { type = culture value = prussian } }
								condition = { type = not value = { type = culture value = lettigallish } }
								condition = { type = not value = { type = culture value = lithuanian } }
								condition = { type = not value = { type = culture value = ugricbaltic } }
								condition = { type = not value = { type = culture value = lappish } }
								condition = { type = not value = { type = culture value = swedish } }
							}
						}
					}
					condition = { type = and # Mordvin
						condition = { type = culture value = ugricbaltic }
						condition = { type = liege
							condition = { type = and
								condition = { type = not value = { type = culture value = lappish } }
								condition = { type = not value = { type = culture value = finnish } }
								condition = { type = not value = { type = culture value = prussian } }
								condition = { type = not value = { type = culture value = lettigallish } }
								condition = { type = not value = { type = culture value = lithuanian } }
								condition = { type = not value = { type = culture value = ugricbaltic } }
								condition = { type = not value = { type = culture value = lappish } }
							}
						}
					}
					# Saami
					condition = { type = and
						condition = { type = culture value = lappish }
						condition = { type = liege
							condition = { type = and
								condition = { type = not value = { type = culture value = lappish } }
								condition = { type = not value = { type = culture value = finnish } }
								condition = { type = not value = { type = culture value = ugricbaltic } }
							}
						}
					}
					# Germanic
					condition = { type = and # German
						condition = { type = culture value = german }
						condition = { type = liege
							condition = { type = and
								condition = { type = not value = { type = culture value = german } }
								condition = { type = not value = { type = culture value = dutch } }
							}
						}
					}
					condition = { type = and # Dutch
						condition = { type = culture value = dutch }
						condition = { type = liege
							condition = { type = and
								condition = { type = not value = { type = culture value = german } }
								condition = { type = not value = { type = culture value = dutch } }
								condition = { type = not value = { type = culture value = frankish } }
							}
						}
					}
					# Frankish
					condition = { type = and # French
						condition = { type = culture value = frankish }
						condition = { type = liege
							condition = { type = and
								condition = { type = not value = { type = culture value = frankish } }
								condition = { type = not value = { type = culture value = latin } }
							}
						}
					}
					condition = { type = and # Occitan
						condition = { type = culture value = latin }
						condition = { type = liege
							condition = { type = and
								condition = { type = not value = { type = culture value = frankish } }
								condition = { type = not value = { type = culture value = latin } }
								condition = { type = not value = { type = culture value = catalan } }
								condition = { type = not value = { type = culture value = italian } }
								condition = { type = not value = { type = culture value = german } }
							}
						}
					}
					# Italian
					condition = { type = and
						condition = { type = culture value = italian }
						condition = { type = liege
							condition = { type = and
								condition = { type = not value = { type = culture value = italian } }
								condition = { type = not value = { type = culture value = latin } }
								condition = { type = not value = { type = culture value = norman } }
								condition = { type = not value = { type = culture value = german } }
							}
						}
					}
					# Iberian
					condition = { type = and # Group
						condition = { type = or
							condition = { type = culture value = castillan }
							condition = { type = culture value = portuguese }
						}
						condition = { type = liege
							condition = { type = and
								condition = { type = not value = { type = culture value = catalan } }
								condition = { type = not value = { type = culture value = castillan } }
								condition = { type = not value = { type = culture value = portuguese } }
							}
						}
					}
					condition = { type = and # Catalan
						condition = { type = culture value = catalan }
						condition = { type = liege
							condition = { type = and
								condition = { type = not value = { type = culture value = catalan } }
								condition = { type = not value = { type = culture value = castillan } }
								condition = { type = not value = { type = culture value = portuguese } }
								condition = { type = not value = { type = culture value = latin } }
							}
						}
					}
					# Slav
					condition = { type = and # Group
						condition = { type = or
							condition = { type = culture value = hungarian }
							condition = { type = culture value = bohemian }
							condition = { type = culture value = westernslavic }
							condition = { type = culture value = easternslavic }
							condition = { type = culture value = southslavic }
							condition = { type = culture value = polish }
							condition = { type = culture value = russian }
						}
						condition = { type = liege
							condition = { type = and
								condition = { type = not value = { type = culture value = hungarian } }
								condition = { type = not value = { type = culture value = bohemian } }
								condition = { type = not value = { type = culture value = westernslavic } }
								condition = { type = not value = { type = culture value = easternslavic } }
								condition = { type = not value = { type = culture value = southslavic } }
								condition = { type = not value = { type = culture value = byzantine } }
								condition = { type = not value = { type = culture value = polish } }
								condition = { type = not value = { type = culture value = russian } }
								condition = { type = not value = { type = culture value = iberian } }
							}
						}
					}
					condition = { type = and # Hungarian/Bohemian
						condition = { type = or
							condition = { type = culture value = hungarian }
							condition = { type = culture value = bohemian }
						}
						condition = { type = liege
							condition = { type = and
								condition = { type = not value = { type = culture value = hungarian } }
								condition = { type = not value = { type = culture value = bohemian } }
								condition = { type = not value = { type = culture value = westernslavic } }
								condition = { type = not value = { type = culture value = easternslavic } }
								condition = { type = not value = { type = culture value = southslavic } }
								condition = { type = not value = { type = culture value = byzantine } }
								condition = { type = not value = { type = culture value = polish } }
								condition = { type = not value = { type = culture value = russian } }
								condition = { type = not value = { type = culture value = iberian } }
								condition = { type = not value = { type = culture value = german } }
							}
						}
					}
					condition = { type = and # Bulgarian/Vlach
						condition = { type = or
							condition = { type = culture value = byzantine }
							condition = { type = culture value = iberian }
						}
						condition = { type = liege
							condition = { type = and
								condition = { type = not value = { type = culture value = hungarian } }
								condition = { type = not value = { type = culture value = bohemian } }
								condition = { type = not value = { type = culture value = westernslavic } }
								condition = { type = not value = { type = culture value = easternslavic } }
								condition = { type = not value = { type = culture value = southslavic } }
								condition = { type = not value = { type = culture value = byzantine } }
								condition = { type = not value = { type = culture value = polish } }
								condition = { type = not value = { type = culture value = russian } }
								condition = { type = not value = { type = culture value = iberian } }
							}
						}
					}
					# Byzantine
					condition = { type = and # Greek
						condition = { type = culture value = greek }
						condition = { type = liege
							condition = { type = and
								condition = { type = not value = { type = culture value = greek } }
								condition = { type = not value = { type = culture value = armenian } }
								condition = { type = not value = { type = culture value = georgian } }
								condition = { type = not value = { type = culture value = none } }
							}
						}
					}
					condition = { type = and # Armenian
						condition = { type = culture value = armenian }
						condition = { type = liege
							condition = { type = and
								condition = { type = not value = { type = culture value = greek } }
								condition = { type = not value = { type = culture value = armenian } }
								condition = { type = not value = { type = culture value = georgian } }
								condition = { type = not value = { type = culture value = none } }
							}
						}
					}
					condition = { type = and # Georgian
						condition = { type = culture value = georgian }
						condition = { type = liege
							condition = { type = and
								condition = { type = not value = { type = culture value = greek } }
								condition = { type = not value = { type = culture value = armenian } }
								condition = { type = not value = { type = culture value = georgian } }
								condition = { type = not value = { type = culture value = alan } }
								condition = { type = not value = { type = culture value = none } }
							}
						}
					}
					condition = { type = and # Nubian
						condition = { type = culture value = none }
						condition = { type = liege
							condition = { type = and
								condition = { type = not value = { type = culture value = greek } }
								condition = { type = not value = { type = culture value = armenian } }
								condition = { type = not value = { type = culture value = georgian } }
								condition = { type = not value = { type = culture value = none } }
								condition = { type = not value = { type = culture value = muslim } }
							}
						}
					}
					# Turkic
					condition = { type = and # Group
						condition = { type = or
							condition = { type = culture value = turkish }
							condition = { type = culture value = cuman }
							condition = { type = culture value = pecheneg }
							condition = { type = culture value = mongol }
						}
						condition = { type = liege
							condition = { type = and
								condition = { type = not value = { type = culture value = turkish } }
								condition = { type = not value = { type = culture value = alan } }
								condition = { type = not value = { type = culture value = cuman } }
								condition = { type = not value = { type = culture value = pecheneg } }
								condition = { type = not value = { type = culture value = mongol } }
							}
						}
					}
					condition = { type = and # Alan
						condition = { type = culture value = alan }
						condition = { type = liege
							condition = { type = and
								condition = { type = not value = { type = culture value = turkish } }
								condition = { type = not value = { type = culture value = alan } }
								condition = { type = not value = { type = culture value = cuman } }
								condition = { type = not value = { type = culture value = pecheneg } }
								condition = { type = not value = { type = culture value = mongol } }
								condition = { type = not value = { type = culture value = georgian } }
							}
						}
					}
					# Basque
					condition = { type = and
						condition = { type = culture value = basque }
						condition = { type = liege
							condition = { type = not value = { type = culture value = basque } }
						}
					}
					# Arab
					condition = { type = and
						condition = { type = culture value = muslim }
						condition = { type = liege
							condition = { type = and
								condition = { type = not value = { type = culture value = muslim } }
								condition = { type = not value = { type = culture value = none } }
							}
						}
					}
					# Berber
					condition = { type = and
						condition = { type = culture value = abghazian }
						condition = { type = liege
							condition = { type = and
								condition = { type = not value = { type = culture value = abghazian } }
								condition = { type = not value = { type = culture value = muslim } }
							}
						}
					}
					# Persian
					condition = { type = and
						condition = { type = culture value = persian }
						condition = { type = liege
							condition = { type = and
								condition = { type = not value = { type = culture value = persian } }
								condition = { type = not value = { type = culture value = muslim } }
							}
						}
					}
				}
			}
		}
	} # End of trigger section

	mean_time_to_happen = {
	
		months = 2
		
		#first in succession to something (which could be bigger) so not very interested
		modifier = {
			condition = { type = not value = { type = primary_heir }}
			factor = 2
		}

		# This is probably the ruler's son, so don't break free
		modifier = {
			condition = { type = or
				condition = { type = and
					condition = { type = not value = { type = duchy } }
					condition = { type = father condition = { type = and
							condition = { type = ruler }
							condition = { type = is_independent }
							condition = { type = or
								condition = { type = duchy }
								condition = { type = kingdom }
							}
						} }
				}
				condition = { type = and
					condition = { type = duchy }
					condition = { type = father condition = { type = and
							condition = { type = ruler }
							condition = { type = kingdom }
						} }
				}
			}
			factor = 10.0
		}

		# Counts directly under kings should not easily break free
		modifier = {
			condition = { type = and
				condition = { type = not value = { type = duchy } }
				condition = { type = liege condition = { type = kingdom } }
			}
			factor = 10.0
		}

		# Extra booster for muslim religious incompatibilities
		modifier = {
			condition = { type = and
				condition = { type = trait value = shiite }
				condition = { type = liege
					condition = { type = trait value = sunni }
				}
			}
			factor = 0.1
		}
		modifier = {
			condition = { type = and
				condition = { type = trait value = sunni }
				condition = { type = liege
					condition = { type = trait value = shiite }
				}
			}
			factor = 0.1
		}

		# Attributes checks
		modifier = {
			condition = { type = martial value = 8 }
			factor = 0.9
		}
		modifier = {
			condition = { type = martial value = 12 }
			factor = 0.9
		}
		modifier = {
			condition = { type = stewardship value = 8 }
			factor = 0.9
		}
		modifier = {
			condition = { type = stewardship value = 12 }
			factor = 0.9
		}
		modifier = {
			condition = { type = diplomacy value = 8 }
			factor = 0.9
		}
		modifier = {
			condition = { type = diplomacy value = 12 }
			factor = 0.9
		}
		modifier = {
			condition = { type = intrigue value = 8 }
			factor = 0.9
		}
		modifier = {
			condition = { type = intrigue value = 12 }
			factor = 0.9
		}

		# Traits checks
		modifier = {
			condition = { type = trait value = proud }
			factor = 0.8
		}
		modifier = {
			condition = { type = trait value = selfish }
			factor = 0.8
		}
		modifier = {
			condition = { type = trait value = indulgent }
			factor = 0.66
		}
		modifier = {
			condition = { type = trait value = hostile }
			factor = 0.8
		}
		modifier = {
			condition = { type = trait value = energetic }
			factor = 0.8
		}
		modifier = {
			condition = { type = trait value = valorous }
			factor = 0.8
		}
		modifier = {
			condition = { type = trait value = reckless }
			factor = 0.8
		}
		modifier = {
			condition = { type = trait value = modest }
			factor = 1.25
		}
		modifier = {
			condition = { type = trait value = gregarious }
			factor = 1.25
		}
		modifier = {
			condition = { type = trait value = amiable }
			factor = 1.25
		}
		modifier = {
			condition = { type = trait value = lazy }
			factor = 1.25
		}
		modifier = {
			condition = { type = trait value = temperate }
			factor = 1.5
		}
		modifier = {
			condition = { type = trait value = weak_willed }
			factor = 1.5
		}
		modifier = {
			condition = { type = trait value = intestinal_worm }
			factor = 1.5
		}

		# Liege attributes
		modifier = {
			condition = { type = liege
				condition = { type = or
					condition = { type = diplomacy value = 9 }
					condition = { type = chancellor_csc condition = { type = diplomacy value = 12 } }
				}
			}
			factor = 2.0
		}
		modifier = {
			condition = { type = liege
				condition = { type = and
					condition = { type = not value = { type = diplomacy value = 5 } }
					condition = { type = not value = { type = chancellor_csc condition = { type = diplomacy value = 7 } } }
				}
			}
			factor = 0.5
		}

		# Liege traits
		modifier = {
			condition = { type = liege
				condition = { type = trait value = maniac }
			}
			factor = 0.7
		}
		modifier = {
			condition = { type = liege
				condition = { type = trait value = excommunicated }
			}
			factor = 0.5
		}
		modifier = {
			condition = { type = liege
				condition = { type = trait value = kinslayer }
			}
			factor = 0.5
		}
	}

	action_a = { # I want to break free
		ai_chance = 95
		modifier = {
			condition = { type = trait value = proud }
			factor = 1.06
		}
		modifier = {
			condition = { type = trait value = selfish }
			factor = 1.06
		}
		effect = { type = trigger for = liege value = 23201 } # Vassal broke free
		effect = { type = independence }
		effect = { type = loyalty value = 1.0 } # Reset loyalty
		effect = { type = prestige value = 50 } # Give prestige
		effect = { type = random chance = 10 # Risk of getting stressed
			effect = { type = add_trait value = stress_symptom }
		}
	}
	action_b = { # I like my liege
		ai_chance = 5
		effect = { type = relation for = liege value = 25 }
		effect = { type = loyalty value = 0.2 }
		effect = { type = prestige value = -20 }
		effect = { type = piety value = 20 }
		effect = { type = add_trait value = loyalist }
		effect = { type = random chance = 10 # Trust a faraway liege will protect you?
			effect = { type = add_trait value = trusting }
		}
	}
}

# Reaction event for liege
character_event = {
	id = 23201
	picture = "event_intrigue"
	immidiate = {
		effect = { type = prestige value = -50 } # Prestige hit for losing a vassal, prevents immediate repledging
		effect = { type = relation for = previous_char value = -150 } # Big relationship hit to prevent repledging, and indicator for liege which vassal broke free
	}
}

If this version works for you, I'll put it up in the next download thread for Mac users as a replacement file.

Btw, if you use the (code) brackets instead of (quote), it will show most of the event behind a scrollbar, makes for easier reading.
 
I'm happy to report that it does seem to work! Several years of gameplay and no crashes! Slowly but surely all those duchies and counts who had vassalized to Leon and Norway despite being nowhere near them began to declare their independence.

Still, apparently the 2.1 beta patch fixed a lot of issues with crazy vassalizations, but until someone ports the patch to Mac (which will probably be never) there's nothing that really can be done about those vassalizations happening in the first place.

Thank you so much for helping me with this, Jor, and I'm sure other Mac users will feel the same way.

I'm going to continue testing regular DVIP's events to see which of those may be causing crashes as well, with eyes peeled for any other really big events.
 
Hello I have a question, which might have been answered but i could not find it, after some years in game i realized that my court always becomes disloyal, they all have like -1% loyalty from character traits, nothing is adding to their loyalty, i don't know if its supposed to be like that or if its a bug or i didn't install it right, I would really appreciate it if you could help me with this, thank you.
 
Hello I have a question, which might have been answered but i could not find it, after some years in game i realized that my court always becomes disloyal, they all have like -1% loyalty from character traits, nothing is adding to their loyalty, i don't know if its supposed to be like that or if its a bug or i didn't install it right, I would really appreciate it if you could help me with this, thank you.

It may have more to do with the traits of your ruler then with the vassals. What traits does he have. Also, what are the laws? Do you have feudal? Usually with feudal you should have your loyalty increase rather then decrease.... so long as the ruler has appropriate traits.
 
Like Drach said, loyalty is affected by ruler traits and the like. If I am reading your post right, then your courtiers are losing loyalty, and I assume your vassals all love you? That has to do with the positive benefits to loyalty that your vassals get (Feudal Contract, Succession Laws, Low Scrutage, Ruler's Prestige) while the courtiers in your court only have personal traits to base loyalty on. You didn't install wrong, it just happens that your King is probably a dick, but his vassals can over look that since they have their own land, don't have to pay high taxes, are protected and don't have to deal with your King everyday ;)

~Hawk
 
The next version will be a little less harsh and will solve the biggest issue: the wording.

If you want to get supermen anyway, ruining the entire game, follow the instructions a few posts up. Although if you say you understand the reasoning behind it, you realise you're basically asking to undo a needed fix? It's not as if Wiz wrote his event I based mine on to be an ass, they serve a much needed purpose. Without this workaround you WILL see demesnes of 20 provinces, something CK was never designed for.

Compare the stats of dead characters like Charlemagne or someone like William the Conqueror -- in CK these were extraordinary... in DV without a skill cap (enforced by event since we must) they are actually weak compared to characters born in game.

I wish Johan would release a new beta with a skill cap... I can't make these events fire invisibly.


At least prodigy charactor should not suffer loss of skill.