Firstly, pds forum has 'insert code'. Please use that for posting your code in the future.
Secondly, your issue has nothing to do with wrong use of root/from/prev, and everything with wrong syntax. If you have a condition in a scope, put it into a
limit block, unless you're using the scope in conditions (basically inside
trigger or other
limit blocks). Like this:
Code:
any_consort = {
limit = {
is_female = yes
is_marriage_adult = yes
is_pregnant = no
}
impregnate = ROOT
}
Thirdly. You do know that cached events are a thing, right? It's not a good idea to have
too many characters running around with cached traits, but so long as there are but a few of them, it's a fine and convenient scope to use. (just remember to clear them out on death -- pretty sure you can still scope to dead cached trait holders).
*also, quick tip. instead of writing fidelitas1-30, just make a hidden fidelitas trait to use in condition blocks instead.