[A16] Rainbeau's Other Mods - Editable Backstories, Smooth Stone Walls, and More

Started by dburgdorf, February 22, 2017, 01:01:16 PM

Previous topic - Next topic

dburgdorf

Quote from: SpaceDorf on March 07, 2017, 08:34:40 AMThe dorf in your name could have fooled me.

I've been Darryl Burgdorf for over 50 years, so long before Dwarf Fortress existed. ;)

Quote from: SpaceDorf on March 07, 2017, 08:34:40 AMThere is a engraving labor in DF.... When those Cheesemaker become legendary in their job... they engrave stuff they like .. Cheese....

That sounds insanely amusing.  :D

Quote from: SpaceDorf on March 07, 2017, 08:34:40 AMSausage, Bacon, Spam and Cheese....

Can I have the sausage, bacon, spam and cheese with extra spam but without sausage, bacon and cheese?
- Rainbeau Flambe (aka Darryl Burgdorf) -
Old. Short. Grumpy. Bearded. "Yeah, I'm a dorf."



Buy me a Dr Pepper?

dburgdorf

#16


Last update: 4/23/2017

Are you tired of running into characters in your game with horribly overpowered or just plain silly backstories? Are you frustrated by the number of colonists you have to feed who aren't willing to work to earn their keep because their backgrounds prevent them from doing manual labor? Does it annoy you when you find a backstory you like with the "Prepare Carefully" mod, only to notice that the gender pronouns or even the pawn's name don't change to fit your character? Do you just hate not being able to do anything about typos that you spot in backstories?

Well, fret no more! Your worries are over!

"Editable Backstories" replaces RimWorld's default backstories with a completely editable set of backstories contained in convenient XML files. Yes, that's right. It doesn't just add editable backstories to the vanilla database. It completely replaces that database.

You can use the mod "straight out of the box," so to speak, as I've included a set of "cleaned up" basic backstories which will be used if all you do is just install and run the mod. None of them are unreasonably powerful or, in my opinion, lore-breaking, none have hard-coded pronouns or names, and only a handful disable manual labor, though some include forced "lazy" or "slow" traits.

But the real point of "Editable Backstories," of course, is that it allows you to edit and add stories yourself. In the "XML Raw Data" folder within the mod's directory, you'll find files containing the full collection of backstories from the vanilla game. In the "Documentation" folder, you'll find detailed instructions to help you put together your own "perfect" backstory collection.

As I already noted, the mod removes all vanilla backstories from the game, so no pawn bios will ever again include material that you don't have the option to edit. This means that you won't meet any of the "pirate king" characters, those characters created by RimWorld Kickstarter backers, whose childhood and adulthood stories are linked. However, "Editable Backstories" allows you to create your own linked stories, so if you happen to like a particular "pirate king" pawn, you can easily add him or her back into your world, complete with any edits or fixes you deem appropriate.

Additionally, while it doesn't remove any potential pawn names from the game, "Editable Backstories" does let you to add as many new names (first names, surnames, nicknames, and/or full names) to your game as you desire.

- Rainbeau Flambe (dburgdorf)


Steam Workshop Link

Dropbox Link

Compatibility:

"Editable Backstories" requires a new game. If you try to add it to (or remove it from) a game in progress, every pawn in the world will end up with new randomly-assigned backstories.

The mod is compatible with both "EdB Prepare Carefully" and "Verify Start."

It should also be fully compatible with any mods that utilize Erdelf's "Humanoid Alien Framework."

Special Note:

I completely understand why backstories aren't editable by default. And I mean absolutely no disrespect to those who backed RimWorld on Kickstarter back in 2013 and got their stories written into the game as a result. But at the same time, I'm a modder. Changing things I don't like about the game is what I do. And the fact that backstories can't be edited, even though I understand it, is something that I don't like.

Credits:

Some of the C# code in "Editable Backstories" derives from code in "Humanoid Alien Framework," which as I understand it in turn was based upon code from the "Community Core Library" mod.

The mod utilizes Pardeike's "Harmony Patch Library." (No additional download is required, as the library is included with the mod.)
- Rainbeau Flambe (aka Darryl Burgdorf) -
Old. Short. Grumpy. Bearded. "Yeah, I'm a dorf."



Buy me a Dr Pepper?

Derp

Quote from: dburgdorf on March 10, 2017, 10:39:23 AM
Are you tired of running into characters in your game with horribly overpowered or just plain silly backstories?
I don't know how to thank you enough.  May I never see another galaxy-famous pop star who was bored of the wealth and fame and decided to become a space pirate and explore the galaxy with her most loyal fans ever again.

dburgdorf

Smooth Stone Walls has been updated again:

- Non-vanilla wall compatibility no longer requires separate dll files.
- Rainbeau Flambe (aka Darryl Burgdorf) -
Old. Short. Grumpy. Bearded. "Yeah, I'm a dorf."



Buy me a Dr Pepper?

AngleWyrm

Quote from: dburgdorf on March 10, 2017, 10:39:23 AM
Special Note:

I completely understand why backstories aren't editable by default. And I mean absolutely no disrespect to those who backed RimWorld on Kickstarter back in 2013 and got their stories written into the game as a result. But at the same time, I'm a modder. Changing things I don't like about the game is what I do. And the fact that backstories can't be edited, even though I understand it, is something that I don't like.

Bravo on taking a stand for what you believe in  :D
My 5-point rating system: Yay, Kay, Meh, Erm, Bleh

Cataphract

Thank you so much! I've been holding off from playing A16 in any large degree because I couldn't put in the backstories I made for the older versions... thanks so so much!

AngleWyrm

#21
The Leadership & Teaching mod creates a set of four characters: Scientist, Botanist, Warrior and Carpenter. Each of these leader types has three key skills that they can teach, if they are at least level 8+ in those skills.

This seems like a perfect fit for Editable Backstories, creating a set of four backstories that offer skill bonuses and requirements in the three skills they can teach. It would do wonders for working with the pair of mods Prepare Carefully and Leadership & Teaching.

I tried adding new backstories, and the first one worked like a charm. But then I went on to add the full set of four and the result was none showed up in the backstory dialogs in Prepare Carefully. I assume that there's something I'm not taking into acccount. Here's what I appended to the general peeps population:
<REB_Code.BackstoryDef>
<defName>GeneralW01</defName>
<Slot>Adulthood</Slot>
<Title>Leader in botany</Title>
<TitleShort>Botanist</TitleShort>
<BaseDesc>NAME is a recognized leader in the field of botany, and HIS peer-reviewed work on genetic updates to haygrass has been published in science journals.</BaseDesc>
<requiredWorkTags>
<li>PlantWork</li>
<li>Animals</li>
<li>Caring</li>
</requiredWorkTags>
<SkillGains>
<li><key>Growing</key><value>5</value></li>
<li><key>Animals</key><value>3</value></li>
<li><key>Medicine</key><value>3</value></li>
<li><key>Shooting</key><value>-1</value></li>
<li><key>Melee</key><value>-1</value></li>
</SkillGains>
<BodyTypeMale>Male</BodyTypeMale>
<BodyTypeFemale>Female</BodyTypeFemale>
<SpawnCategories>
<li>Civil</li>
<li>Raider</li>
<li>Slave</li>
<li>Trader</li>
<li>Traveler</li>
</SpawnCategories>
</REB_Code.BackstoryDef>

<REB_Code.BackstoryDef>
<defName>GeneralW02</defName>
<Slot>Adulthood</Slot>
<Title>Leader in science</Title>
<TitleShort>Scientist</TitleShort>
<BaseDesc>NAME is a recognized leader in general science. HE holds several patents on DNA resequencing in live organisms, and HECAP is traveling to a planet where authorization has been given to run experiments with outbreak potential.<BaseDesc>
<requiredWorkTags>
<li>Intellectual</li>
<li>Animals</li>
<li>Caring</li>
</requiredWorkTags>
<SkillGains>
<li><key>Research</key><value>5</value></li>
<li><key>Animals</key><value>3</value></li>
<li><key>Medicine</key><value>3</value></li>
<li><key>Shooting</key><value>-1</value></li>
<li><key>Melee</key><value>-1</value></li>
</SkillGains>
<BodyTypeMale>Male</BodyTypeMale>
<BodyTypeFemale>Female</BodyTypeFemale>
<SpawnCategories>
<li>Civil</li>
<li>Raider</li>
<li>Slave</li>
<li>Trader</li>
<li>Traveler</li>
</SpawnCategories>
</REB_Code.BackstoryDef>

<REB_Code.BackstoryDef>
<defName>GeneralW03</defName>
<Slot>Adulthood</Slot>
<Title>Leader in warfare</Title>
<TitleShort>Warrior</TitleShort>
<BaseDesc>NAME has fought HIS way up through the ranks from squad leader to master seargent, and has led several successful missions teaching the local rebels how to conduct raids.<BaseDesc>
<requiredWorkTags>
<li>Violent</li>
<li>Scary</li>
<li>Caring</li>
</requiredWorkTags>
<SkillGains>
<li><key>Shooting</key><value>5</value></li>
<li><key>Melee</key><value>3</value></li>
<li><key>Medicine</key><value>3</value></li>
<li><key>Social</key><value>-2</value></li>
</SkillGains>
<BodyTypeMale>Male</BodyTypeMale>
<BodyTypeFemale>Female</BodyTypeFemale>
<SpawnCategories>
<li>Civil</li>
<li>Raider</li>
<li>Slave</li>
<li>Trader</li>
<li>Traveler</li>
</SpawnCategories>
</REB_Code.BackstoryDef>

<REB_Code.BackstoryDef>
<defName>GeneralW04</defName>
<Slot>Adulthood</Slot>
<Title>Leader in carpentry</Title>
<TitleShort>Carpenter</TitleShort>
<BaseDesc>NAME began HIS career as a construction worker, where HECAP took an interest in design flaws. HECAP went to night school and became an architect to improve upon them.<BaseDesc>
<requiredWorkTags>
<li>Artistic</li>
</requiredWorkTags>
<SkillGains>
<li><key>Construction</key><value>5</value></li>
<li><key>Crafting</key><value>3</value></li>
<li><key>Artistic</key><value>3</value></li>
<li><key>Mining</key><value>-2</value></li>
</SkillGains>
<BodyTypeMale>Male</BodyTypeMale>
<BodyTypeFemale>Female</BodyTypeFemale>
<SpawnCategories>
<li>Civil</li>
<li>Raider</li>
<li>Slave</li>
<li>Trader</li>
<li>Traveler</li>
</SpawnCategories>
</REB_Code.BackstoryDef>


Also: Is it possible to add this kind of thing as a separate patch file, in effect creating the opportunity to make a mod of new backstories? If it is, how do I do it? Tellmetellmetellme  ;D
My 5-point rating system: Yay, Kay, Meh, Erm, Bleh

Tammabanana

Quote from: dburgdorf on March 10, 2017, 10:39:23 AM
"Editable Backstories" replaces RimWorld's default backstories with a completely editable set of backstories contained in convenient XML files. (Yes, the mod actually replaces the default set of backstories. It doesn't just add editable duplicates to the existing database.)

The XML files contain all the backstories from the game, plus a few extras. I edited them to remove hardcoded gender pronouns and pawn names, and fixed the occasional typo that happened to come to my attention, but otherwise resisted the impulse to edit or rewrite them.

You are a saint; thank you.
Tam's tiny mods: forum thread: Kitchen Counters and other shelving *** Smoked meat *** Travel rations: MREs *** Pygmy Muffalo

dburgdorf

Quote from: AngleWyrm on March 11, 2017, 08:21:16 AMI tried adding new backstories....

Three of the four stories have XML errors. They don't close their <BaseDesc> tags.  Replace "<BaseDesc>text<BaseDesc>" with "<BaseDesc>text</BaseDesc>" and you should be fine.  ;)

Quote from: AngleWyrm on March 11, 2017, 08:21:16 AMAlso: Is it possible to add this kind of thing as a separate patch file, in effect creating the opportunity to make a mod of new backstories? If it is, how do I do it? Tellmetellmetellme  ;D

I don't think you'd be able to release just an XML file as a mod or patch, but certainly, you could make it available via DropBox. Beyond that, if enough interest develops, I could see about setting up some sort of "central repository" for people to make backstories available, but I have no idea at the moment whether it would be worth the bother to do so.
- Rainbeau Flambe (aka Darryl Burgdorf) -
Old. Short. Grumpy. Bearded. "Yeah, I'm a dorf."



Buy me a Dr Pepper?

AngleWyrm

Quote from: dburgdorf on March 11, 2017, 10:19:23 AM
Three of the four stories have XML errors. They don't close their <BaseDesc> tags.  Replace "<BaseDesc>text<BaseDesc>" with "<BaseDesc>text</BaseDesc>" and you should be fine.  ;)

Thanks!
My 5-point rating system: Yay, Kay, Meh, Erm, Bleh

dburgdorf

Editable Backstories has been updated:

- It's now possible to create "linked" backstories (sets consisting of a name, a childhood and an adulthood which always appear together).

- The mod is now more usable "out of the box," as I've moved most of the XML files to a side folder to prevent the "badly in need of editing" backstories from loading in the game.

- I've done further editing and cleanup on the XML files which do still load, to make sure that they provide a good base set of backstories.
- Rainbeau Flambe (aka Darryl Burgdorf) -
Old. Short. Grumpy. Bearded. "Yeah, I'm a dorf."



Buy me a Dr Pepper?

AngleWyrm

#26
Sweet! Downloading.

And also, the corrected xml addition for Leaders & Teaching mod worked out perfectly:
My 5-point rating system: Yay, Kay, Meh, Erm, Bleh

dburgdorf

I'd like to add some additional filtering options to "Editable Backstories," to help tailor how stories get connected, and I'm looking for input on how best to do it.

It's certainly possible that a pawn whose childhood and adulthood stories are very different can make for an interesting tale. But it seems to end up more often just producing nonsense. I once had a character whose childhood story was that he was a medieval slave who knew nothing but hard work and couldn't read or write, but whose adulthood story was that he was a glitterworld novelist who'd never labored a day in his life. Granted, that specific example could be prevented just by defining the slave childhood story to require manual labor and the novelist adulthood story to disable it, which would prevent them from being linked, but the broader issue remains.

Should I add filtering capabilities at all, and if so, what sort might be most desireable? (Bear in mind that any filtering would depend upon new tags in the backstory definitions, and so would be completely optional. I'm not planning to mandate anything.)

I have a few ideas, but I want to see what y'all think would be useful.
- Rainbeau Flambe (aka Darryl Burgdorf) -
Old. Short. Grumpy. Bearded. "Yeah, I'm a dorf."



Buy me a Dr Pepper?

Malachi_Draven

Quick question, if I want to add a name that works for both Male and Female, what do I put in the <Gender> section?

dburgdorf

Quote from: Malachi_Draven on March 14, 2017, 05:38:14 PM
Quick question, if I want to add a name that works for both Male and Female, what do I put in the <Gender> section?

Uh, yeah. Probably something I should have thought to include in the documentation. ;)

Gender can be defined as <Gender>Male</Gender>, <Gender>Female</Gender> or <Gender>Either</Gender>.
- Rainbeau Flambe (aka Darryl Burgdorf) -
Old. Short. Grumpy. Bearded. "Yeah, I'm a dorf."



Buy me a Dr Pepper?