Code Monkey home page Code Monkey logo

cleanslate's Introduction

What is it?

As the name implies, CK2+ exists to give you more—more content, more choices, more fun. The goal is to offer a deeper and more challenging CK2 experience without straying too far from the original game mechanics or adding overly deterministic events. The purpose of this mod is not historical accuracy (although we try to preserve it whenever it’s not detrimental to gameplay), but rather to enrich the medieval sandbox that CK2 offers.

Manual Installation Instructions:

  1. First find your installation directory. This will depend on your OS, and may not be (especially in the case of Windows) the directory where you actually installed CK2 itself:
    Windows: ~\My Documents\Paradox Interactive\Crusader Kings II\mod\
    Linux: ~/.paradoxinteractive/Crusader Kings II/mod/
    Mac: ~/Documents/Paradox Interactive/Crusader Kings II/mod/

  2. If the "mod" subdirectory doesn't exist in the above location, create it.

  3. If you already have a "mod" sub-directory there, excellent. Make sure you delete anything related to CK2Plus prior to the manual installation -- this includes any old versions of the mod, anything that was installed by Steam Workshop (which we no longer use), etc. You want a clean slate when installing, even if you're just updating to a new mod version.

  4. Make sure you've downloaded the .zip file from the link at the top of this page.

  5. To extract the files from within, you'll first need a program like WinRar or 7-Zip. Once you have that, you should be able to just click to open the .zip file and you can move the files over to the "mod" sub-directory. Alternatively, you can use the extractor program to select the .zip file and select where you want the files extracted (the installation directory in #1).

  6. Start the CK2 launcher. Check the "CK2Plus" box in the list of mods. When the title screen comes up make sure the checksum (the four-letter code to the left of the title screen buttons) matches the one listed for that CK2Plus version. If so, you're good to go. If not, you've either made some other alterations, installed some other mods, or made a mistake.

Useful Links

CK2 Plus Official Forum: https://forum.paradoxplaza.com/forum/index.php?forums/ck2-plus-mod.841/

Disclaimer & Legal:

This mod for Crusader Kings 2 is offered as is. CK2Plus Team, hereinafter referred to as "modder", takes no responsibility for harm done in using this mod. Modder makes no guarantee of support or update of this mod. Modder does not take any responsibility for results of further modification. This mod can only be distributed on official Paradox Interactive forum by the modder, and any other distribution of the mod, or part of the mod, without an explicit permission by the modder on the official Paradox Interactive forum is strictly forbidden.

Paradox Interactive Mod Policy: http://www.paradoxplaza.com/mod-static-info-ca.html

CK2Plus Team

Whizzer - Lead Dev
Aerkhanite
daniloy
Fall of Stars
mightnight
schwarherz
vukica

cleanslate's People

Contributors

aerotinge avatar ihatetrains avatar latueur avatar nbmsc avatar schwarherz avatar silversweeper avatar succinctscrivener avatar visardomi avatar whizzer avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cleanslate's Issues

Vanilla bugs in new_crusade

c_famagusta = {
owner = {
religion = defender
culture = defender
ai = yes
}
}
c_limisol = {
owner = {
religion = defender
culture = defender
ai = yes
}
}
k_cyprus = {
has_holder = no
}
}
any_crusade_participant = {
limit = {
ai = yes
most_participating_crusader = {
NOT = { character = PREV }
}
}
crusade_beneficiary = {
grant_title_no_opinion = c_famagusta
grant_title_no_opinion = c_limisol
grant_title_no_opinion = d_cyprus

It does not care whether the holder of c_famagusta is part of defender of 4th crusade or not. If he has same culture and religion, he's doomed.
# Crete is taken by a Merchant Lord
if = {
limit = {
c_kaneia = {
holder_scope = {
ai = yes
}
}
c_chandax = {
holder_scope = {
ai = yes
}
}
any_crusade_participant = {
is_patrician = yes
higher_real_tier_than = COUNT
}
}
random_crusade_participant = {
limit = {
is_patrician = yes
higher_real_tier_than = COUNT
}
preferred_limit = {
has_landed_title = k_venice
}
preferred_limit = {
has_landed_title = d_venice
}
preferred_limit = {
real_tier = EMPEROR
}
preferred_limit = {
real_tier = KING
}
grant_title_no_opinion = d_krete
grant_title_no_opinion = c_kaneia
grant_title_no_opinion = c_chandax

And so did Krete lords...
As for Nicaea Empire,
any_neighbor_independent_ruler = {
limit = {
ai = yes
culture = PREV
religion = PREV
lower_real_tier_than = KING
}
set_defacto_liege = PREV
}

It just absorb any neighbor rulers with same religion and culture, regardless of whether it was used to be independent or not.

I did not play most of HF crusade stuff since they're shitty, but this is stupid to another level.

landless title attribute not save into a save game, maintenance events needed.

This is an old vanilla bug. In CK2 if a title was set_title_landless by script in a game, it does not stay landless after you loaded a savefile, which the title is not in landless status.
In other words, title mapping of CK2 is not clean up when resign and load another save.

Take e_mongol_empire as example, fire event 60500, Genghis could start invading eastern edge of map in most of time, with a e_mongol_empire title set as landless to allow it being there till Genghis holds at least one province, and a flag temporary_landless_title for triggering an event to set the title back to normal status.

However if I save a game at first time and quit to the desktop, restart and load the savegame. The game now take e_mongol_empire as a normal title since any title status is imported from /landed_titles and savefile doesn't containing such a meta data.
The poor Genghis will lost his title due to unland and his war goes invalid.

I use an on_start hook event to check if this is a savegame or not, and filter any_title with temporary_landless_title flag and then manually set it up to make sure it working.
I'm not sure what style of fix you tend to do, so I post an issue first instead a pr.

Proposal: Dummy achievements.txt in exchange of performance

common/achievements.txt stores triggers of Steam Achievements, which is not possible to fire with a mod like CleanSlate
However it still processed by the game engine and takes CPU times.
By emptying this file, the game can run ~6%* faster. It's a very cheap and easy way to gain performance with no risks of touching other content files.

*1.059 faster, bm 1066.9.15 start, total_years_played == 5, observation
**it might vary on devices

Ck2 Problem with Coat of Arms popping up

Hello, I hope you are having a great day. I have a big problem with Crusader Kings 2. Where the coat of arms of counties are popping up and don't go away when I press the religious map mode or any map mode. It is super frustrating, annoying and it makes me sad since when I first installed the game I played it for weeks and this never happened. If you can help me. Thank you in advance.

(Some people said it is unfixable, I still have hope that it is fixable.)
Ck2bugs

Regular war can block revolts from triggering

CleanSlate Bug
The Consolidated province revolt triggers fix(cb5bfc5) introduce two bug

  • One is that a regular war, like claim, can block Nationalist/Religious revolts from triggering
    For instance,

    NOT = { # Not if there is already an ongoing revolt
    top_liege = {
    any_war = {
    defender = { character = PREV }
    trigger_if = {
    limit = { using_cb = peasant_revolt }
    war_title = ROOT # The province
    }
    }
    }
    }

    It's not proper to use trigger_if here and will result any war, rather than peasant_revolt liberation_revolt or heretic_revolt, returning true in the condition. Thus revolts blocked.

  • Second, there's duplicated checks of ToG DLC, it's unnecessary

    else_if = {
    limit = {
    OR = {
    has_castle = yes
    has_tribal = yes
    has_temple = yes
    has_city = yes
    }
    has_dlc = "The Old Gods"
    }
    # Heretic revolts have the highest priority
    if = {
    limit = {
    is_heresy_of = top_liege
    has_dlc = "The Old Gods"

You can sway yourself

I don't think you should be able to sway yourself. Does it have any events related to it?
20220211203449_1

Worship the ancestor decision cannot be used

Worship the ancestor decision cannot be used.
1.Start the game as african leader with african fait
2. click Worship the ancestor decision

AR: grayed
ER: should be available

Note: maybe repro with other religions

weirdo variant situation for succ_byzantine_elective and succ_hre_elective

laws In CleanSlate, is_feudal = yes is used to replace obsoleted is_nomadic = no is_merchant_republic = no is_patrician = no trio.
The good thing is that some weirdo variants have been also fixed, such as theocracy Byz and republic Byz not using open elective.
But when it comes to tribal, I think it's not comprehensive.
Unlike governments besides feudal/tribal, tribal government do not lock into one certain succession law.
In vanilla , succ_byzantine_elective works good with tribal Basileus, it occasionally happens.
In CleanSlate, succ_byzantine_elective was blocked from tribal Basileus and force him to adopt the failsafe - gavelkind,
it would make Byz lost its imperial_government since then, even if inherited or claimed by a feudal heir.
And so do HRE.

If it’s designed like this on purpose, I can understand. But if not, I think we can discuss about it.

Level 1 Castle buildings are duplicated

When opening the view of any castle-type barony, there are copies of every level 1 building, which when built become blue as if there were no level two. Inspecting the save, the building flag (say, ca_) is duplicated, but when loading the spurious building returns to being unbuilt.

This doesn't happen with temples, cities or tribes.

Anti-cheating the Pope 67001

67001, the player is asked by the papal emissary to adopt papal investiture

option = {
name = EVTOPTA67001 # Fold to demand
primary_title = {
add_law_w_cooldown = investiture_law_0
}

However, the law is going to apply in option block, depending on the choice.
It gives the player a chance to swap their primary_title if there's more than one available, take the option and then swap back.
Leaving the original primary_title stays in free investiture.

I'd suggest a primary_title = { save_event_target_as = title_being_demanded } first in immediate block. So it always fires on the target title.

Proposal: laws: move revoke_law from pass_effect block back to effect block

In CleanSlate the law enacting was separated in two steps,
First is revoke conflicting laws in a group and apply related effects if any,
Second is setting up commands that change actual play.
However it would cause history law setup failure, take e_hre for example

1122.1.1 = {
law = investiture_law_0 # Concordat of Worms
}

investiture_law_0 add in 1122 will not trigger pass_effect block that cleanup investiture_law_1, resulting investiture_law_1 and investiture_law_0 coexist in game.
圖片
And #67 is related to this to some extent.

Wrong scope in antagonize events

antagonize events, such as HF.22012

persistent_event_target:antagonize_target = {
show_scope_change = no
character_event = {
id = HF.22013
tooltip = tooltip_22012_A
}
}

tooltips referred within a wrong scope
tooltip_22012_A;Instruct all the town criers across your realm to mock and insult §Y[antagonize_target.GetTitledFirstName]§! on your behalf, besmirching [antagonize_target.GetHerHis] name and §YAntagonizing§! [antagonize_target.GetHerHim] in the process.;Ordonner à tous les crieurs publics du pays de ridiculiser et insulter [antagonize_target.Get_le_TitledFirstNameJ] en votre nom pour salir sa réputation et [antagonize_target.GetLeLa] §Ycontrarier§!.;Weist alle Stadtschreier in Eurem Reich an, sich über §Y[antagonize_target.GetTitledFirstName]§! in Eurem Namen lustig zu machen und zu beleidigen und §YVerleumdet§! [antagonize_target.Getihnsie] in diesem Prozess.;;Instruye a todos los pregoneros del reino a burlarse e insultar a §Y[antagonize_target.GetTitledFirstName]§! en tu nombre, mancillando el suyo y §Ycontrariándo[antagonize_target.GetLoLa]§! en el proceso.;;;;;;;;;x

which results
圖片

Not sure about sway events, did not play as a friendly guy.

Suggested fix:
Append Root scope first, like [Root.antagonize_target.GetTitledFirstName].

Apostate Cardinal can be elected Pope

圖片
Vanilla exploit, persist in CleanSlate.

It could happen when a bishop become heresy, accepted demanding conversion, etc.. and the death of the Pope comes just in time.
(The religious_titles that controls the succession line requires a few days to update.)
Thankfully, it's pretty easy to fix in CleanSlate.
By revoking religious_titles of the apostasy in convert_religion_failsafe_effect, it immediately disqualify the apostasy.
Keep the Holy See not going astray.

Problem with the Culture Convert events.

I noticed a problem and that was Wen nwillhelm successfully conquered England.... Doesn't the Anglo-Saxon culture change into the English culture, is that a bug?

Inconsist government in the lobby and in game

Rather minor but annoying glitch
It render wrong government in character selection screen, but corrected once game started (has_game_started = yes)

CleanSlate

check his government, is feudal
圖片

CleanSlate - Ingame

check his government, goes tribal
圖片

Vanilla

check his government, is tribal
圖片

I think this is related to some vanilla history/provinces farces (avar tribal > feudal > magyar tribal again...)
dumb CK2 don't handle these changes on-fly, just like what we had in the iceland...
The trigger you used in government_trigger is still...somehow mystic.

Again, this is not a gameplay broken bug, but rather an annoying one.

Bad localisation artifact_description_smith_tier_1

artifact_description_smith_tier_1;A well crafted [Root.GetWeaponType] made at the behest of [Root.GetTitledName] by [From.GetTitledName].;[Root.GetWeaponType] de bonne qualité sur commande [Root.Get_du_TitledName] [From.Get_au_TitledName].;[Root.GetWeaponEinEine] gut verarbeitet[Root.GetWeaponAdjEndingDE] [Root.GetWeaponTypeDE]. Geschmiedet von [Root.GetTitledName] auf Geheiß von [From.GetTitledName].;;Un/a [Root.GetWeaponType] forjado/a por [From.GetTitledName] a petición de [Root.GetTitledName];;;;;;;;;x
artifact_description_smith_tier_2;An excellently crafted [Root.GetWeaponType] made at the behest of [Root.GetTitledName] by [From.GetTitledName];[Root.GetWeaponType] d'excellente qualité sur commande [Root.Get_du_TitledName] [From.Get_au_TitledName].;[Root.GetWeaponEinEine] hervorragend verarbeitet[Root.GetWeaponAdjEndingDE] [Root.GetWeaponTypeDE]. Geschmiedet von [Root.GetTitledName] auf Geheiß von [From.GetTitledName].;;Un/a [Root.GetWeaponType] excelente, forjado/a por [From.GetTitledName] a petición de [Root.GetTitledName];;;;;;;;;x

customizable_localisation:GetWeaponType did not return a valid string here.
And he's a lowborn. Well...
圖片

796 - Borovichi(near Finland) is reachable from Andalusia

圖片
As screenshot, I did not own any baron there but it has no war fog applied.
And I can do diplomatic action with rulers there.

It seems that vanilla Borovichi is 1652, which is Arigh, Maghreb in CleanSlate and causing this bug. Still finding what exactly the bug file located.

Steps to reproduce: 936 bm, play as Emir Abdallah of Beja.

Missing Cultures

no landed characters have Castilian, Mandé, Latgalian, Estonian, Frankish, or Nenets as their culture, instead having "noculture"

temple holding granted by a feudal/tribal holder not switching theocracy

Step to reproduce:

  1. Play any catholic ruler, revoke a bishop.
  2. Grant the newly revoked temple to a courtier.
  3. He's a baron now.

It seems the suffering is not over yet. But thankfully that your old scripts works here this time.

theocratic_group_allow_trigger = {
	trigger_if = {
		limit = { has_game_started = yes }

-		is_theocracy = yes
+		is_feudal = no
+		is_tribal = no
+		is_nomadic = no
+		is_republic = no
	}
}

Not comprehensively tested, there might be reason you changed it. but I don't know.

if/else_if instead of random_list in china_war_modify_variables_by_century_effect. Is there a good reason?

china_war_modify_variables_by_century_effect = {
if = {
limit = { year >= 1300 }
change_variable = {
which = local_china_war_troop_quantity
value = 8
}
change_variable = {
which = local_china_war_target_match_mult
value = 0.05
}
change_variable = {
which = local_china_war_troop_quality
value = 1
}
}
else_if = {

By using if/else_if, the effect lost randomness and only the first valid condition fires.
I guess it's not the way this effect should be.

convert_religion_failsafe_effect not working well if ROOT is a female catholic temple holder

hidden_effect = {
if = {
limit = { government = temporary_fake_theocracy_government }
set_correct_theocratic_government_type_effect = yes
clr_character_flag = needs_temporary_fake_theocracy_government
}
}

By invoking set_correct_theocratic_government_type_effect first, a female cathar > catholic temple holder is unallowed from playing Iqta, Monastic and Theocracy government.
So she would stay with temporary_fake_theocracy_government since the flag is yet cleared.
But if you swap the script order, clr_character_flag first then trigger effect. She's unable to stay temporary_fake_theocracy_government this time and is forced to fallback to normal feudal_government.

圖片
Bug found and tested on female cathar>catholic rulers when trying to exploit female Pope in CleanSlate.

the spy does not work accuse of treason

after choosing a life, a spy and after choosing a target, when you write, you want to substitute a character in prison for -50 reputation, nothing happens

Special crown portrait not displayed, HF.20406 bad trigger

CleanSlate bug

  • portrait p18, p19 not displayed. Using vanilla scripts fixes the bug, but I guess you have some idea about it.

  • HF.20406 only check has_landed_title and then add_trait, ignoring whether the artifact is actually held and is active or not.
    That said, HF.20415 is not properly merged into HF.20406.

    trigger_switch = {
    on_trigger = has_landed_title
    e_hre = { add_trait = dead_crown_hre }
    e_byzantium = { add_trait = dead_crown_byzantine }
    e_persia = { add_trait = dead_crown_pahlavi }
    k_italy = { add_trait = dead_iron_crown_lombardy }
    k_hellenic_pagan_reformed = { add_trait = dead_scepter_hellenic_fylkir }
    d_norse_pagan_reformed = { add_trait = dead_crown_fylkir }
    d_tengri_pagan_reformed = { add_trait = dead_crown_tengri_fylkir }
    d_finnish_pagan_reformed = { add_trait = dead_crown_finnish_fylkir }
    d_slavic_pagan_reformed = { add_trait = dead_crown_slavic_fylkir }
    d_baltic_pagan_reformed = { add_trait = dead_crown_romuva_fylkir }
    d_west_african_pagan_reformed = { add_trait = dead_crown_west_african_fylkir }
    d_zun_pagan_reformed = { add_trait = dead_crown_zun_fylkir }
    d_aztec_pagan_reformed = { add_trait = dead_crown_aztec_fylkir }
    d_bon_pagan_reformed = { add_trait = dead_scepter_bon_fylkir }
    }

tribal_organization_0 added when decrease tribal organization

A rather weird bug. I attached screenshots for better understanding.

Before

圖片

After Low tribal organization applied

圖片
(Please ignore in-game date, I did not take screenshots in time sequence.)


tribal_organization_0 was added. This bug won't be triggered if I did not have centralization_2 at the beginning.
It seems that a fallback mis-triggered when add_law = centralization_1 fired in the pass_effect block.
I tried to debug but I'm not that good at law modding. Sorry I can't help more.

A dirty fix is to place revoke_law sequence after if block, in case of the quirk is hard coded.

HF tributary cb not working

tributary_nomad_cb doing make_tributary first and following a remove_tributary, which will cancel the previous effect.
Swapping the order of two effects fixes it.

absolute cog for city vassals

Seems like raising a new vassal for a city still defaults to agnatic open elective, shouldnt it be true cog?

					trigger_if = {
						limit = { is_republic = yes }

						has_dlc = "Conclave"
						is_patrician = yes

						trigger_if = {
							limit = { independent = no }

							defacto_liege_title = {
								OR = {
									has_law = true_cognatic_succession
									has_law = cognatic_succession
									has_law = enatic_cognatic_succession
								}
							}
						}
					}

I think this block only applies to patrician republics, should there be another for plain city republic? Not sure why the insert code function isnt working right for me.

Mass conversion not working

While playing tribal unreformed germanic pagan and using the targeted decision to request a mass conversion,, even if the tooltip says the sponsor will accept no event fires to do the actual mass conversion, tried using the targeted decision then changing character to the sponsor to see if the event is visible to no avail

Event WoL.11140: War focus Wargames ending event ignores specific winning result

Two related bugs inherited from vanilla (I checked) in this event. Both of these bugs center around a character receiving the character flag wargame_win6

Missing victory description text

The event description is set after checking for a flag on the character receiving event, which all are variations of the following code:

desc = {
	trigger = { has_character_flag = wargame_win1 }
	text = EVTDESC_WOL_11140_WIN1
}

The following character flags are all checked for:
wargame_win1
wargame_win2
wargame_win3
wargame_win4
wargame_win5
wargame_loss1
wargame_loss2
wargame_loss3
wargame_loss4
wargame_loss5
wargame_loss6
wargame_loss7
wargame_loss8

However, it's possible to reach this event with the character flag wargame_win6, which is NOT checked for, and therefore doesn't have proper description text.

Victor receives defeat "prize"

As part of this event, the options that grant the rewards for victory both have the following among their conditions to appear:

OR = {
	has_character_flag = wargame_win1
	has_character_flag = wargame_win2
	has_character_flag = wargame_win3
	has_character_flag = wargame_win4
	has_character_flag = wargame_win5
}

As mentioned early, it's possible to reach this event with the character flag wargame_win6. In that scenario you can't receive the victory rewards and always lose prestige instead of gaining prestige (or progressing the associated permanent character modifier)

Despite both places where the Paradox scripters forgot about this possible character flag, it IS cleared properly in the event's after block.

Patrician can have wrong government and succession

CleanSlate bug

Government:
圖片
(L CleanSlate, Unplayable republic patrician)
(R Vanilla/Fixed, Playable mr patrician)

Law:
圖片
(L CleanSlate, Gavelkind)
(R Vanilla/Fixed, Seniority)
It happens when the Conclave dlc being disabled.

Can't find a way to create this bloodline: event_religion_aggressive_bloodline_01

The only place I see it mentioned is in, events\HF_bloodline_events.txt, but events to create both religious bloodlines are completely commented out, and the events that should lead to them do it instead to the creation of event_family_bloodline_01, I think. There are possibly more events that lead to the incorrect bloodline, though I haven't fully checked.

Localisation error on event MnM.4428 (Monastic penance success)

Hello,

I am playing with 1.0Beta4 and have noticed that the localisation button for event MnM.4428 does not write out the title for the society leader. Looking up the event by enabling charinfo and Ctrl-right-clicking on the button, I can see that the relevant key is EVTOPTA_MNM_4428, which happens to be located in /CleanSlate/localisation/13_mnm_monastic_orders_events.csv and has the following English form:

EVTOPTA_MNM_4428;You honor me, [Society.GrandMaster.GetSocietyRank];

Note that the event immediately below it, which is the failure event for the same decision, has a different way of picking the leader's title:

EVTOPTA_MNM_4429;I have failed you, [monastic_leader.GetSocietyRank].;

I am not sure whether it would work to simply replace Society.GrandMaster with monastic_leader, but it would seem to work at least in this case, as the event mentions event_target:monastic_leader. In any case, I think Society.GrandMaster would probably need to be replaced everywhere?

Thanks for the attention.

bloodline problem

  1. main character have a daughter
  2. daughter is matrilineally married to a person with a historical bloodline
  3. granddaughter is born with a historical bloodline
  4. main character forged a bloodline
  5. daughter receive forged bloodline
  6. granddaughter do not receive  forged bloodline

Note" bloodline is " The Conqueror (Blood of___) "

failed to generate correct tooltip for convert_religion_failsafe_effect

effect = {
# Workaround for automatic usurpation of theocratic characters
set_character_flag = convert_secret
convert_religion_failsafe_effect = yes

When convert_religion_failsafe_effect was called in secret_religions_personally_adopt_secret_religion, the tooltip returns noreligion on this occasion.
The decision effect itself is actually working fine, though.
圖片
It's more likely a vanilla glitch but unfortunately triggered in CleanSlate.

Provinces with inconsistent terrain comparing to vanilla

I found there're many provinces have different terrain comparing to vanilla.
Using following script for testing

any_province = {
	limit = {
		terrain = arctic
	}
	log = "[This.County.GetName] is arctic terrain"
}

Result(Vanilla)

49 Lines/Provinces, alphabetized

game.log
[effectimplementation.cpp:18398]: EVENT [769.1.1]:--- is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Austisland is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Bjarmia is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Bolshoy Yugan is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Dvina is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Hlynov is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Illyinsk is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Indiga is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Izhma is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Kanin is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Keltma is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Khantia is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Khlynov is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Kola is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Kolguyev is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Kolva is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Koshma is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Kudymkar is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Kuloy is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Mansia is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Mezen is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Narim is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Norðland is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Onega Peninsula is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Perm is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Pil'va is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Pinega is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Sedyu is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Severnaya is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Snopa is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Suðurland is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Syrj is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Tavda is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Tobysh is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Tom is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Tsilma is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Ugra is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Ural is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Vashka is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Vasyugan is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Vel is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Veliky Ustug is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Velsk is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Vestisland is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Vishera is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Vychegda is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Vym is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Yamalia is arctic terrain
[effectimplementation.cpp:18398]: EVENT [769.1.1]:Zavarot is arctic terrain

Result(CleanSlate)

61 Lines/Provinces, alphabetized

game.log
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:--- is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Austisland is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Bjarmia is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Bolshoy Yugan is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Borovichi is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Calarasi is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Dvina is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Hlynov is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Illyinsk is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Izhma is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Kanin is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Karachev is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Keltma is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Khantia is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Khlynov is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Kola is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Kolguyev is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Kolva is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Koshma is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Kozelsk is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Kromy is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Kudymkar is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Kuloy is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Kursk is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Mansia is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Mezen is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Narim is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Norðurland is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Novosil is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Onega Peninsula is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Perm is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Pil'va is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Pinega is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Priluk is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Rylsk is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Sedyu is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Severnaya is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Snopa is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Soyma is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Suðurland is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Syrj is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Tavda is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Tikhvine is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Tobysh is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Tom is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Tsilma is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Ugra is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Ural is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Vashka is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Vasyugan is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Vel is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Veliky Ustug is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Velsk is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Vestisland is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Vishera is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Vorotynsk is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Vychegda is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Vym is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Yamalia is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Zavarot is arctic terrain
[effectimplementation.cpp:18398]: EVENT [1066.9.15]:Zvenyhorod is arctic terrain


I think some terrain in province was mistaken. It's not intentionally, right?

model files defined in DLC should not be in base game

I have frequently CTD with CleanSlate, it turn out to be some dlc related files was moved and loaded in the base game with Cleanslate.
For people who did not own proper DLCs or who simply hate it and not enable it, they could get CTD with something like this in error.log.
[virtualfilesystem.cpp:753]: Could not open file: gfx/models/arabian_ship.xac, error: not found
Graphic files modding are a bit tricky here, and separating Cleanslate into correspoding content pack patch is the Paradox dumb way...

Maybe an Installer?...(facepalm

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.