I know it's probably too late for this suggestion, since the product has already been released, but here goes.
Instead of using an ordered numbering system of replacing the various %s placeholder string values inside of the Good/Neutral/Evil string options (based upon their numerical position in the string, why not use a tokenized approach.
Example:
Currently, if I wanted to insert a name of the planet in a string I would have to do this inside an event:
GoodOption "%s is a lush, green place"
GoodOptStr01 7
What would be much easier is this approach:
GoodOption "[$PlanetName$] is a lush, green place."
EvilOption "[$StarSystemName$] is a planet haven."
You could use as many of these as needed within the string, all without having to define what you wanted based on a relative position in the string. You also have the added benefit of seeing what tokens are placed in the string so that it is easier to read.
All of these tokens would be pre-defined by the GalCiv system as they are now.
So for events you have:
1 = Player’s name. Uses the value the player typed in at the start of the game. (ex> Alan Bradly)
2 = Player’s empire name. Name of the human race (ex. Terrans)
3 = Name of Player’s ships that triggered the event. Right now only works with colonization events…will display the name of the colony ship.
7 = Name of the planet.
8 = Name of the star system.
9 = Random value of the EVIL option.
10 = Random value of the NEUTRAL option.
11 = Random value of the GOOD option.