Sorry if I ask silly questions. For my part, I think there are some obvious and easy things wrong here, so I do think I might be able to shed some light on them. If I'm mistaken, and you(DH)'ve already spent hours looking at how to fix this, do let me know.
I've been looking at the RevUtils, and they've pointed me towards the XML tags relating to Rev.
bFreeSpeech: All civics currently have this set to 0 (false presumably). It's probably true that no one civic guarantees freedom of speech, but given what we've got to work with, I suggest Democracy (Gov't) and Separation of Powers (Power) - at the very least - should have this set to true (what about Magistrates?).
bNoRealElections: DynamicCivNames is expecting civs to be able to have both 'CanDoElections' and 'NoRealElections'. I suggest that NoRealElections should include all Power civics except Legislature and Separation of Powers.
bCommunism: currently is only on the KEYNESIAN economic civic. What's with that?
I suggest instead of querying this value, DynamicNames should say if Labour Freedom > 0 and Democracy Level < 0, that civ is communist. Of course this is a huge oversimplification at best (and just plain wrong at worst) but I think it probably works and that's the main thing
.
LabourFreedom: values are currently all over the place. I suggest the following changes:
Socialism: +3 (is -1)
Centralized: -1 (is +2)
Serfdom: -3 (is +2)
Nationalist: +1 (down from +8)
Liberal: +2 (currently +10)
Proletariat: +2 (is -5
)
Bourgeois: -2 (currently +3)
Organized Labour: +2 (currently 0)