The set of events I posted do nothing by themselves, this is a "complement" for modders only. They lack the "input-events" to do anything by themselves!
Anyway, I fixed a few bugs, including that AI one, so here's the latest version for whoever's interested.
I also coded a few events for my game that you might be interested to look at so you can understand better what this set does. Note my game is heavily modded and this wouldn't work on your side without some adaptation work, but this is more for modders to understand where I'm coming from and how to apply this to their work. Here they are:
Code:
######### COLONIAL MIGRATIONS #########
#First event. If you have any province not of your main culture, and any colony above 600 pop, this can trigger and turn your colony into a city, and then turns its culture to the one of the province where the colonists came from.
province_event = {
id = 454549
trigger = {
NOT = { has_global_flag = copyculture }
OR = {
has_province_modifier = "colonial_boost1"
has_province_modifier = "colonial_boost2"
has_province_modifier = "colonial_boost3"
}
is_core = THIS
is_overseas = no
has_owner_culture = no
owner = {
any_owned_province = {
is_colony = yes
has_owner_culture = yes
citysize = 600
}
}
}
mean_time_to_happen = {
months = 480
modifier = {
factor = 0.75
owner = { NOT = { accepted_culture = THIS } }
}
modifier = {
factor = 0.8
owner = { idea = land_of_opportunity }
}
modifier = {
factor = 0.9
revolt_risk = 5
}
modifier = {
factor = 0.9
revolt_risk = 10
}
}
title = "EVTNAME454549"
desc = "EVTDESC454549"
immediate = {
set_global_flag = copyculture
set_global_flag = migration_in_progress
}
option = {
name = "EVTOPTA454549"
owner = {
random_owned = {
limit = {
is_colony = yes
has_owner_culture = yes
citysize = 600
}
set_province_flag = copy_culture
citysize = 400
}
}
citysize = -500
set_province_flag = spread_culture
}
}
#Second event. Same as first, but triggers if you have any overseas province with slaves, then turns the colony to the culture of that province.
province_event = {
id = 454551
trigger = {
has_province_modifier = slave_boost
has_owner_culture = no
citysize = 2000
owner = {
any_owned_province = {
is_colony = yes
has_owner_culture = yes
citysize = 600
}
}
}
mean_time_to_happen = {
months = 360
}
immediate = {
set_global_flag = copyculture
set_global_flag = migration_in_progress
}
title = "EVTNAME454551"
desc = "EVTDESC454551"
option = {
name = "EVTOPTA454551"
owner = {
random_owned = {
limit = {
is_colony = yes
has_owner_culture = yes
citysize = 600
}
set_province_flag = copy_culture
citysize = 400
}
}
citysize = -500
set_province_flag = spread_culture
}
}
#Third event. This one doesn't work with colonies anymore. ;) It is basically the same as the first one, but triggers if you have any overseas province with more than 1000 pop and less than 2000 pop. Sends 1200 pop from a wrong culture province there, and changes the receiver's culture accordingly.
province_event = {
id = 454550
trigger = {
NOT = { has_global_flag = copyculture }
OR = {
has_province_modifier = "colonial_boost1"
has_province_modifier = "colonial_boost2"
has_province_modifier = "colonial_boost3"
}
is_overseas = no
is_core = THIS
has_owner_culture = no
owner = {
any_owned_province = {
is_colony = no
is_overseas = yes
has_owner_culture = yes
NOT = { citysize = 2000 }
}
}
}
mean_time_to_happen = {
months = 1200
modifier = {
factor = 0.8
owner = { NOT = { accepted_culture = THIS } }
}
modifier = {
factor = 4.0
is_overseas = yes
}
modifier = {
factor = 0.8
owner = { idea = land_of_opportunity }
}
modifier = {
factor = 0.9
revolt_risk = 5
}
modifier = {
factor = 0.9
revolt_risk = 10
}
}
title = "EVTNAME454550"
desc = "EVTDESC454550"
immediate = {
set_global_flag = copyculture
set_global_flag = migration_in_progress
}
option = {
name = "EVTOPTA454550"
owner = {
random_owned = {
limit = {
is_colony = no
is_overseas = yes
has_owner_culture = yes
NOT = { citysize = 2000 }
}
set_province_flag = copy_culture
citysize = 1200
}
}
citysize = -1500
set_province_flag = spread_culture
}
}
I hope this clears up some doubts about what this really is. 
Cheers.