A13: self-contradictory XML backstories

Started by b0rsuk, June 07, 2016, 03:10:54 AM

Previous topic - Next topic

b0rsuk

These things are not a big deal, but they were a low hanging fruit. The main thing is they might confuse people reviewing colonists during colony generation.

Some of the backgrounds have penalties to a skill but the skill is disabled altogether. The way Rimworld currently works, skill value is pointless if skill is disabled... I think.

Kickstarter backers:

Mad scientist {'Mining': -3, 'Social': -3} but 'Mining' included in WorkDisables
Army cook {'Social': -3, 'Medicine': -2} but 'Caring' included in WorkDisables
Fighter controller {'Research': -6, 'Artistic': -6} but 'Intellectual' included in WorkDisables
Vengeful explorer {'Growing': -3, 'Artistic': -3, 'Social': -3} but 'PlantWork' included in WorkDisables
Banished soldier {'Research': -3} but 'Intellectual' included in WorkDisables
Space researcher {'Crafting': 3, 'Growing': 2, 'Mining': -1, 'Social': -3} but 'ManualSkilled' included in WorkDisables
Pop idol {'Mining': -6} but 'Mining' included in WorkDisables
Pirate king {'Social': -4} but 'Social' included in WorkDisables
Executive officer {'Medicine': -2} but 'Caring' included in WorkDisables
State engineer {'Social': -3} but 'Social' included in WorkDisables
Political assassin {'Social': 6} but 'Social' included in WorkDisables
Brigand {'Social': -2} but 'Social' included in WorkDisables
Test subject {'Research': -8} but 'Intellectual' included in WorkDisables
Alcoholic trucker {'Social': -2} but 'Social' included in WorkDisables
Medical scientist {'Social': -2} but 'Social' included in WorkDisables
Medieval knight  {'Growing': -1} but 'PlantWork' included in WorkDisables
Test subject {'Growing': 1, 'Social': -4} but 'PlantWork' included in WorkDisables
Genetic engineer {'Shooting': -2} but 'Violent' included in WorkDisables
Lazy programmer {'Growing': -3} but 'PlantWork' included in WorkDisables
Mindwiped assassin {'Medicine': 4} but 'Caring' included in WorkDisables
Test subject {'Medicine': 3} but 'Caring' included in WorkDisables
Rocket engineer {'Melee': -3, 'Shooting': 2} but 'Violent' included in WorkDisables
Space marine {'Research': -3, 'Social': -2, 'Medicine': 2} but 'Intellectual' included in WorkDisables
Hunter of the king {'Growing': 4, 'Research': -2, 'Artistic': -2} but 'Intellectual' included in WorkDisables
Energy researcher {'Artistic': -3} but 'Artistic' included in WorkDisables
Mercenary pilot {'Mining': -3, 'Medicine': -1} but 'Caring' included in WorkDisables
Lone traveler {'Artistic': -1} but 'Artistic' included in WorkDisables
Undertaker {'Melee': -2} but 'Violent' included in WorkDisables
Spiceminer {'Research': -3, 'Social': 2, 'Medicine': -2} but 'Intellectual' included in WorkDisables
Crime lord {'Medicine': 4} but 'Caring' included in WorkDisables
Mob henchman {'Artistic': -2} but 'Artistic' included in WorkDisables
Hedge fund manager {'Melee': 2, 'Shooting': 4} but 'Violent' included in WorkDisables
Space navy doctor {'Mining': -2} but 'Mining' included in WorkDisables
Government agent   {'Medicine': 3} but 'Caring' included in WorkDisables
Spy {'Research': -3} but 'Intellectual' included in WorkDisables
Wandering crafter {'Crafting': 14} but 'ManualSkilled' included in WorkDisables
Corp researcher {'Melee': -3, 'Shooting': -3} but 'Violent' included in WorkDisables
Sole survivor {'Artistic': -6} but 'Artistic' included in WorkDisables


Assorted childhoods (note this is a different Test subject):

Mute {'Social': -3} but 'Social' included in WorkDisables
Vatgrown soldier {'Social': -4} but 'Social' included in WorkDisables
Test subject {'Social': -4} but 'Social' included in WorkDisables


Adulthoods:

Bodyguard {'Social': -3} but 'Social' included in WorkDisables
Castaway {'Social': -3} but 'Social' included in WorkDisables
Jailbird {'Social': -3} but 'Social' included in WorkDisables
Sheriff {'Social': -3} but 'Social' included in WorkDisables
Medieval lord {'Growing': -5, 'Mining': -5, 'Construction': -5} but 'ManualSkilled' included in WorkDisables
Assassin {'Construction': -2, 'Mining': -2, 'Growing': -2} but 'ManualSkilled' included in WorkDisables


Also a trivial thing, but in SkillGains of kickstarter backers sometimes skill bonuses are like +2, other times they're 2. The plus or lack of plus is an inconsistency.

1000101

These aren't really inconsistencies, they are redundancies.

There are inconsistencies when the game picks childhood and adult backstories though.  Such as picking one which gives a bonus to a skill and the other which completely disables it.  This is a product of PRNG but it would be nice for the game to not pick conflicting backstories.
(2*b)||!(2*b) - That is the question.
There are 10 kinds of people in this world - those that understand binary and those that don't.

Powered By

b0rsuk

Either not pick conflicting backstories, or make adulthood override childhood. When childhood had a skill disabled but there's a modifier in adulthood, that skill becomes enabled again.

milon

Agreed. There backstory engine could simply enable the disabled skill, or else avoid picking an adult backstory that buffs a disabled skill.

ison

Tynan, could you please take a look? Should we address this? I'm not sure it's a bug per se.

Tynan

It is redundant data, but it doesn't produce a bug in actual game behavior. So we'll try not to add more to this, but I'm not worried about it as-is.

These are mostly player-submitted backstories and it would take a lot of rather pointless labor to keep this data set perfectly clean.

Also, having some redundancy allows us to modify data more easily.
Tynan Sylvester - @TynanSylvester - Tynan's Blog